[JS] > Prototypes (Часть 1) Flashcards

1
Q

Что такое прототипы?

A

Прототипы это механизм наследование свойств и методов по цепочке обьектов при помощи свойста prototype

($) Если при чтении мы не найдем свойство, то мы продолжим поиск по цепи прототипов

($) По дефолту в prototype лежит обьект с конструктором который ссылается на этот же обьект

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

Откуда мы имеет метод valueOf?

function Person(name) {
this.name = name
}
var person1 = new Person(‘Bob’);

person1.valueOf()

A

Метод valueOf мы получаем изза того, что прототипом обьекта person1 является Object который имеет этот метод

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

Мы можем получить Object.keys() метод путем получения его через прототип?

A

Нет, потому что он не обьявлен в свойстве Object.prototype, потому что этот метод является статическим

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

На кого будет ссылаться прототип после использования Object.create()?

Пример:
var person2 = Object.create(person1);

A

Прототип person2 будет ссылаться на person1

($) если вызвать person2.__proto__ то мы получим обьект person1

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

__proto__

A

доступ к обьекту прототипа?

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