小議Function.apply()之二------利用Apply的參數數組化來提高JavaScript程序性能_javascript技巧
來源:懂視網
責編:小采
時間:2020-11-27 20:33:54
小議Function.apply()之二------利用Apply的參數數組化來提高JavaScript程序性能_javascript技巧
小議Function.apply()之二------利用Apply的參數數組化來提高JavaScript程序性能_javascript技巧:我們再來聊聊Function.apply() 在提升程序性能方面的技巧。 我們先從 Math.max() 函數說起, Math.max后面可以接任意個參數,最后返回所有參數中的最大值。 比如 alert(Math.max(5,8)) //8alert(Math.max(5,7,9,3,1,6)) //9
導讀小議Function.apply()之二------利用Apply的參數數組化來提高JavaScript程序性能_javascript技巧:我們再來聊聊Function.apply() 在提升程序性能方面的技巧。 我們先從 Math.max() 函數說起, Math.max后面可以接任意個參數,最后返回所有參數中的最大值。 比如 alert(Math.max(5,8)) //8alert(Math.max(5,7,9,3,1,6)) //9

我們再來聊聊Function.apply() 在提升程序性能方面的技巧。
我們先從 Math.max() 函數說起, Math.max后面可以接任意個參數,最后返回所有參數中的最大值。
比如
alert(Math.max(5,8)) //8
alert(Math.max(5,7,9,3,1,6)) //9
但是在很多情況下,我們需要找出數組中最大的元素。
var arr=[5,7,9,1]
alert(Math.max(arr)) // 這樣卻是不行的。一定要這樣寫
function getMax(arr){
var arrLen=arr.length;
for(var i=0,ret=arr[0];i ret=Math.max(ret,arr[i]);
}
return ret;
}
這樣寫麻煩而且低效。如果用 apply呢,看代碼:
function getMax2(arr){
return Math.max.apply(null,arr)
}
兩段代碼達到了同樣的目的,但是getMax2卻優雅,高效,簡潔得多。
看性能測試:
getMax性能測試
聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com
小議Function.apply()之二------利用Apply的參數數組化來提高JavaScript程序性能_javascript技巧
小議Function.apply()之二------利用Apply的參數數組化來提高JavaScript程序性能_javascript技巧:我們再來聊聊Function.apply() 在提升程序性能方面的技巧。 我們先從 Math.max() 函數說起, Math.max后面可以接任意個參數,最后返回所有參數中的最大值。 比如 alert(Math.max(5,8)) //8alert(Math.max(5,7,9,3,1,6)) //9