05 Модуль -- 04 ES6 классы Flashcards

1
Q

Класс — это

A

конструктора вместе с прототипом.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Какой метод должен присутствовать в объявлении класса обязательно?

A

Mетод constructor

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Сколько может быть конструкторов в классе?

A

В классе должен быть только один конструктор, иначе будет ошибка.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Куда записываются методы класса?

A

В prototype

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Пример записи метода класса

A
class Guest {
  // Аналог функции-конструктора
  constructor(name, roomNumber) {
    this.name = name;
    this.roomNumber = roomNumber;
  }
  // Аналог Guest.prototype.getFullInfo
  getFullInfo() {
    console.log(`
      Guest ${this.name}
      Room number ${this.roomNumber}
    `);
  }
}

const mango = new Guest(‘Mango’, 26);

mango.getFullInfo();
// Guest Mango
// Room number 26
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Пример геттера

A
get name() {
    return this.name;
  }
// обращение к get и set не требует вызова - т.е. без ()
console.log(mango.name); // Mango
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Пример сеттера

A
set name(value) {
    this.name = value;
  }
mango.name = 'Mango the Fluffy';
console.log(mango.name); // Mango the Fluffy
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Как называются собственные свойства класса и собственные методы класса для вызова по имени класса, без создания объекта ?

A

Называют статическими

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Какое служебное слово нужно добавить для создания статического метода или свойства?

A

static

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Наследование классов принцип

A

Это означает, что мы можем создавать новые классы, которые наследуют все от другого класса, но при этом добавляют уникальную информацию для себя.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Какое слово указывает на родительский класс (чьи свойства будут унаследованы)

A

extends

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Если у потомка есть свой constructor, то чтобы в нём вызвать конструктор родителя какой метод нужно использовать?

A

Метод super() с аргументами для constructor родителя. Вызвать конструктор родителя можно только изнутри конструктора потомка.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Какой метод в конструкторе потомка мы обязаны вызвать до первого обращения к ключевому слову this?

A

До вызова super() не существует this, так как по спецификации в этом случае именно super инициализирует this.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly