Array dengan Fungsi Tanpa Nama dalam JavaScript
Saya telah menyebut sebelum ini, bahawa fungsi dalam JavaScript berkelakuan seperti string atau nombor. Khususnya, kita boleh membuat array yang terdiri daripada fungsi. Mari buat:
let arr = [
function() {console.log('1')},
function() {console.log('2')},
function() {console.log('3')},
];
Sebagai contoh, mari kita keluarkan kandungan elemen array sifar ke konsol:
let arr = [
function() {console.log('1')},
function() {console.log('2')},
function() {console.log('3')},
];
console.log(arr[0]); // akan melihat kod sumber fungsi pertama
Seperti yang anda lihat, dalam contoh di atas kita mendapat kod sumber fungsi, bukan hasilnya.
Untuk memanggil fungsi, kita perlu
menambahkan kurungan bulat padanya. Oleh kerana fungsi kita
disimpan dalam arr[0], maka kurungan bulat
perlu ditulis selepas kurungan siku, seperti
ini: arr[0](). Mari kita uji:
let arr = [
function() {console.log('1')},
function() {console.log('2')},
function() {console.log('3')},
];
arr[0](); // akan mengeluarkan '1'
Kita juga boleh mengulangi array fungsi kita dengan gelung dan dalam gelung itu memanggil setiap fungsi:
let arr = [
function() {console.log('1')},
function() {console.log('2')},
function() {console.log('3')},
];
for (let func of arr) {
func(); // memanggil fungsi kami dalam gelung
}
Buat array arr dengan tiga fungsi.
Biarkan yang pertama mengembalikan melalui return
nombor 1, yang kedua - nombor 2,
yang ketiga - nombor 3.
Dengan menggunakan array arr yang anda buat,
keluarkan nombor 3 ke konsol, dengan memanggil
fungsi yang sepadan.
Dengan menggunakan array arr yang anda buat,
cari jumlah hasil fungsi (tanpa gelung).
Ulangi array arr yang anda buat
dengan gelung dan keluarkan hasil semua
fungsi ke konsol.