Rumah > Artikel > hujung hadapan web > Bagaimana untuk mencari jumlah tatasusunan menggunakan JavaScript
Kaedah: 1. Gunakan pernyataan "arr.reduce(function f(pre,curr){return pre cur})"; 2. Gunakan "arr.reduceRight(function f(pre,curr){return sebelum cur})".
Persekitaran pengendalian tutorial ini: sistem Windows 7, versi JavaScript 1.8.5, komputer Dell G3.
Cari jumlah tatasusunan menggunakan JavaScript
Kaedah 1: Gunakan reduce()
reduce () Mengira elemen tatasusunan menjadi nilai (dari kiri ke kanan).
var a = [1, 2, 3, 4, 5]; var b =a.reduce(function f(pre, curr){ return pre + curr; }); console.log(b);
Penerangan: Kaedah
reduce() boleh memanggil fungsi panggil balik yang ditentukan untuk semua elemen dalam tatasusunan. Nilai pulangan bagi fungsi panggil balik ini ialah hasil terkumpul, dan nilai pulangan ini disediakan sebagai parameter pada kali berikutnya fungsi panggil balik dipanggil. Penggunaan khusus adalah seperti berikut:
array.reduce(callbackfn[, initialVaule]);
Penerangan parameter:
tatasusunan: parameter yang diperlukan, objek tatasusunan.
panggilan balikfn: parameter yang diperlukan, fungsi yang menerima sehingga empat parameter. Kaedah recover() memanggil fungsi callbackfn sekali untuk setiap elemen dalam tatasusunan.
initialVaule: Parameter pilihan, jika initialVaule ditentukan, ia akan digunakan sebagai nilai awal untuk memulakan pengumpulan. Panggilan pertama ke fungsi callbackfn membekalkan nilai ini sebagai parameter dan bukannya nilai tatasusunan.
Nilai pulangan kaedah reduce() ialah hasil kumulatif yang diperolehi oleh panggilan terakhir ke fungsi panggil balik.
Jika parameter initialVaule disediakan, kaedah reduce() akan memanggil fungsi callbackfn sekali untuk setiap elemen dalam tatasusunan (dalam susunan indeks menaik jika initialVaule tidak disediakan, kaedah reduce() akan panggil fungsi callbackfn sekali untuk setiap elemen dalam tatasusunan Fungsi callbackfn dipanggil untuk setiap elemen bermula dengan 2 elemen.
Nilai pulangan bagi fungsi panggil balik disediakan sebagai parameterNilai sebelumnya pada kali berikutnya fungsi panggil balik dipanggil. Nilai pulangan yang diperoleh daripada panggilan terakhir kepada fungsi panggil balik ialah nilai pulangan kaedah recude(). Kaedah ini tidak memanggil fungsi panggil balik untuk elemen yang hilang dalam tatasusunan.
Sintaks fungsi panggil balik adalah seperti berikut:
function callbackfn(previousValue, currentVaule, currentIndex, array);
Penerangan parameter fungsi panggil balik:
previousValue: nilai yang diperoleh oleh yang terakhir panggil ke fungsi panggil balik. Jika initialValue diberikan kepada kaedah reduce() , nilai sebelumnya ialah initialValue apabila fungsi itu mula-mula dipanggil.
currentVaule: Nilai tatasusunan elemen semasa.
currentIndex: Indeks berangka elemen tatasusunan semasa.
tatasusunan: Objek tatasusunan yang mengandungi unsur.
Apabila fungsi panggil balik pertama kali dipanggil, nilai yang diberikan sebagai argumen bergantung pada sama ada kaedah reduce() mempunyai argumen initialValue. Jika initialValue diberikan kepada kaedah recude(), parameter previousValue ialah initialValue dan parameter currentValue ialah nilai elemen pertama dalam tatasusunan.
Kaedah 2: Gunakan reduceRight()
reduceRight() untuk mengira elemen tatasusunan menjadi nilai (dari kanan ke kiri).
var arr = [1, 2, 3, 4, 5, 5]; var b =arr.reduceRight(function f(pre, curr){ return pre + curr; }); console.log(b);
Penerangan: Kaedah
reduceRight() boleh memanggil fungsi panggil balik yang ditentukan pada semua elemen dalam tatasusunan dari kanan ke kiri. Nilai pulangan bagi fungsi panggil balik ini ialah hasil terkumpul, dan nilai pulangan ini disediakan sebagai parameter pada kali berikutnya fungsi panggil balik dipanggil. Penggunaan khusus adalah seperti berikut:
array.reduceRight(callbackfn[, initialValue]);
Sintaks dan penggunaan kaedah ini lebih kurang sama dengan kaedah reduce() Satu-satunya perbezaan ialah ia memanggil fungsi panggil balik bermula dari sebelah kanan tatasusunan. Jika initialValue disediakan, kaedah reduceRight() memanggil fungsi callbackfn sekali untuk setiap elemen dalam tatasusunan dalam susunan indeks menurun. Jika initialValue tidak diberikan, kaedah reduceRight() memanggil fungsi callbackfn pada setiap elemen dalam tertib indeks menurun, bermula dengan elemen ke-2 hingga terakhir.
[Pembelajaran yang disyorkan: Tutorial JavaScript Lanjutan]
Atas ialah kandungan terperinci Bagaimana untuk mencari jumlah tatasusunan menggunakan JavaScript. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!