АБ
Size: a a a
АБ
АБ
T
T
T
T
АБ
TP
let foo = {
baz: function() {
console.log(this);
}
}
foo.baz(); // 'this' указывает на объект 'foo', так как функция 'baz' была вызвана
// как метод объекта 'foo'
let bar = foo.baz;
bar(); // 'this' указывает на глобальный объект window, так как при вызове функции
// ссылка на объект не используетсяАБ
let foo = {
baz: function() {
console.log(this);
}
}
foo.baz(); // 'this' указывает на объект 'foo', так как функция 'baz' была вызвана
// как метод объекта 'foo'
let bar = foo.baz;
bar(); // 'this' указывает на глобальный объект window, так как при вызове функции
// ссылка на объект не используетсяthis динамически, на лету. И в зависимости от контекста, this будет разный. Можно даже при вызове функции подставить любой this, какой хочешь:foo.baz.call(window) // `this` будет `window`
TP
ЕГ
TP
АБ
const upper = function() { return this.toUpperCase() }
upper.call('foo') // => "FOO"
upper.call('bar') // => "BAR"
String.prototype.upper = upper
'hello'.upper() // => "HELLO"АБ
T
MK
T