Виклик в контексті масиву
важливість: 5
Яким буде результат? Чому?
let arr = ["a", "b"];
arr.push(function() {
alert( this );
});
arr[2](); // ?
Виклик arr[2]() це – синтаксично старий-добрий obj[method](), в ролі obj ми маємо arr, а в ролі method ми маємо 2.
Ми маємо виклик функції arr[2] як методу об’єкту. Відповідно, він отримає в якості this об’єкт arr та виведе масив:
let arr = ["a", "b"];
arr.push(function() {
alert( this );
})
arr[2](); // a,b,function(){...}
Масив має 3 елемента, спочатку їх було 2, плюс функція.