Panggilan dalam konteks *array*
pentingnya: 5
Apa hasilnya? Mengapa demikian?
let arr = ["a", "b"];
arr.push(function() {
alert( this );
})
arr[2](); // ?
Panggilan arr[2]() secara sintaks adalah obj[method]() yang sudah ada dari lama, dalam peran sebagai obj kita memiliki arr, dan dalam peran sebagai method kita memiliki 2.
Jadi kita memiliki sebuah panggilan fungsi arr[2] sebagai sebuah metode objek. Secara alami, fungsi terebut menerima this yang mereferensikan ke arr and menghasilakn array berikut:
let arr = ["a", "b"];
arr.push(function() {
alert( this );
})
arr[2](); // a,b,function(){...}
Array tersebut memiliki 3 nilai: sejak awal array tersebut memiliki dua nilai, plus fungsi.