Dalam pengaturcaraan, pemprosesan tatasusunan ialah operasi yang sangat biasa. Antaranya, mencari purata juga merupakan keperluan yang sangat asas. Dalam JavaScript, terdapat pelbagai cara untuk mencapai fungsi ini. Di bawah ini kami akan memperkenalkan beberapa kaedah biasa.
Kaedah paling asas ialah menggunakan gelung for untuk melintasi elemen tatasusunan satu demi satu, mengumpulnya dan akhirnya membahagi dengan panjang daripada tatasusunan untuk mendapatkan purata .
function average(arr) { var sum = 0; for(var i = 0; i < arr.length; i++) { sum += arr[i]; } return sum / arr.length; }
Dalam fungsi ini, pembolehubah jumlah pertama ditakrifkan untuk menyimpan hasil terkumpul. Kemudian gunakan gelung for untuk melintasi keseluruhan tatasusunan, menambah nilai elemen semasa untuk dijumlahkan setiap kali. Akhir sekali, bahagikan jumlah dengan panjang tatasusunan untuk mendapatkan purata.
Kaedah pengurangan ialah kaedah yang disertakan dengan objek prototaip tatasusunan dalam JavaScript Ia menerima fungsi panggil balik dan nilai awal, dan kemudian menambahnya pada tatasusunan secara bergilir-gilir Setiap elemen dan hasil terkumpul sebelumnya dihantar ke fungsi panggil balik, dan hasil akhir dikira. Oleh itu, kita boleh menggunakan kaedah mengurangkan untuk mencapai purata.
function average(arr) { var sum = arr.reduce(function(prev, cur) { return prev + cur; }, 0); return sum / arr.length; }
Dalam fungsi ini, kita mula-mula menggunakan kaedah pengurangan untuk mengumpul semua elemen dalam tatasusunan, dan menetapkan hasil akhir kepada pembolehubah jumlah. Kemudian bahagikan jumlah dengan panjang tatasusunan untuk mendapatkan purata.
Dalam ES6, kita boleh menggunakan fungsi anak panah dan kaedah Array.prototype.reduce untuk melaksanakannya dengan lebih ringkas. operasi mencari purata.
const average = arr => arr.reduce((prev, cur) => prev + cur, 0) / arr.length;
Dalam fungsi ini, kami menggunakan fungsi anak panah untuk mentakrifkan fungsi panggil balik, dan menggunakan kaedah pengurangan untuk mengumpul semua elemen dalam tatasusunan, membahagikan hasil akhir dengan panjang tatasusunan dan mengembalikannya bersama-sama. Terima kasih kepada gula sintaksis fungsi anak panah, kod itu kelihatan sangat ringkas.
Ringkasan
Tiga kaedah di atas adalah kesemua kaedah klasik untuk mencari purata. Kaedah penggunaan for loop adalah agak asas dan sesuai untuk difahami oleh pemula. Menggunakan kaedah pengurangan boleh mengurangkan jumlah kod dan menjadikan struktur kod lebih jelas Ia juga lebih sesuai untuk idea pengaturcaraan berfungsi. Menggunakan fungsi anak panah ES6 dan kaedah Array.prototype.reduce boleh memudahkan lagi kod. Dalam pembangunan sebenar, kita boleh memilih salah satu kaedah untuk melaksanakan operasi purata mengikut keperluan sebenar.
Atas ialah kandungan terperinci javascript mencari purata. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!