兩種求平均數的方法:1、利用forEach()和length屬性來求,語法「function f(v){s =v;}陣列物件.forEach(f);avg=s /陣列物件.length;」;2、利用reduce()和length屬性來求,語法「function f(p,c){s=p c;return s;}陣列物件.reduce(f);avg=s/數組物件.length;」。
本教學操作環境:windows7系統、javascript1.8.5版、Dell G3電腦。
方法1:利用forEach() length屬性
#實作想法:
利用forEach()迭代數組計算元素總和
利用length屬性計算陣列長度
將陣列元素總和除以 數組長度
實作程式碼:
var a = [10, 11, 12], sum = 0,len,avg; function f(value) { sum += value; } a.forEach(f); console.log("数组元素总和为:"+sum); len=a.length; console.log("数组长度为:"+len); avg=sum/len; console.log("数组平均数为:"+avg);
##說明:
array.forEach(funtion callbackfn(value, index, array), thisValue)
funtion callbackfn(value, index, array):必要參數,指定回呼函數,最多可以接收三個參數:
thisValue:可省略的參數,回呼函數中的 this 可引用的物件。如果省略 thisArg,則 this 的值為 undefined。
方法2:利用reduce() length屬性
實作想法:
實作程式碼:
var a = [11, 12, 13], sum = 0,len,avg; function f(pre,curr) { sum=pre+curr; return sum; } a.reduce(f); console.log("数组元素总和为:"+sum); len=a.length; console.log("数组长度为:"+len); avg=sum/len; console.log("数组平均数为:"+avg);說明:reduce() 方法可對數組中的所有元素呼叫指定的回呼函數。此回調函數的傳回值為累積結果,且此回傳值在下一次呼叫該回呼函數時作為參數提供。
array.reduce(function callbackfn(previousValue, currentVaule, currentIndex, array), initialValue)
function callbackfn(previousValue, currentVaule, currentIndex, array):必要參數,指定回呼函數,最多可以接收4個參數:
initialValue:可省略的參數,傳遞給函數的初始值。
以上是javascript數組怎麼求平均數的詳細內容。更多資訊請關注PHP中文網其他相關文章!