На данный вопрос уже ответили:
var obj = {
name: 'cc',
trade: function() {
console.log(this.name); //cc
}
};
obj.trade();
var obj = {
name: 'cc',
trade: function() {
console.log(this); //name, trade
(function() {
console.log(this); //window, в этом и вопрос, почему,
//ведь эта функция выполняется внутри метода объекта
})();
}
};
obj.trade();
Почему this
у функции, которая находится внутри метода trade
объекта obj
, равен window
, а не obj
?
Потому что важно не то, где функция находится, а как вызывается:
(function() {
console.log(this);
}).call(this);
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Задача: задается строка, необходимо вернуть массив состоящий из пар символов, если у последней пары не хватает символа добавить вместо него...