Можно ли обратиться к методу объекта изнутри через binding identifier
, как во второй функции?
let obj = {
funcFirst() {
console.log(funcFirst);
},
funcSecond: function funcSecond() {
console.log(funcSecond);
}
}
obj.funcSecond();
obj.funcFirst();
Можно ли обратиться к методу объекта изнутри через binding identifier, как во второй функции?
Нет нельзя.
MethodDefinition в отличие от FunctionExpression не подразумевает добавление в создаваемый EnvironmentRecord ссылки на создаваемую функцию с указанным именем.
В этом можно убедиться посмотрев описания Runtime Semantics в соответствующих разделах.
У MethodDefinition вместо строк
Perform envRec.CreateImmutableBinding(name, false).
...
Perform envRec.InitializeBinding(name, closure).
Стоит добавление свойства в объект, например:
Let desc be the PropertyDescriptor{[[Value]]: methodDef.[[Closure]], [[Writable]]: true, [[Enumerable]]: enumerable, [[Configurable]]: true}.
Return ? DefinePropertyOrThrow(object, methodDef.[[Key]], desc).
Можно
let obj = {
funcFirts() {
console.log(this.funcFirts);
},
funcSecond: function f() {
console.log(f);
}
}
obj.funcSecond();
obj.funcFirts();
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Есть вопросы,которые бот должен искать в яндексеКак можно это реализовать?
Подскажите пожалуйста плагин, на котором можно реализовать подобную галерею