關於push和concat的性能問題


var arr1 = [1,2,3,-1]
var arr2 = [4,5,6,7,8,9,10,12,13,14,15,16,17,18,29,30,31,32,33,34,35,36,37,38,39,40]
var arr  = arr1.concat(arr2)



借用apply方法 ,push、splice也可和來連接數組。因為push沒有創建新數組,如果想要保掛原對象的引用,可使用push方法。

var testConcat = function(abc) {
  var arr1 = [1,2,3,-1] var arr2 = [4,5,6,7,8,9,10,12,13,14,15,16,17,18,29,30,31,32,33,34,35,36,37,38,39,40] var arr = arr1.concat(arr2) } var testPush = function(abc) { var arr1 = [1,2,3,-1] var arr2 = [4,5,6,7,8,9,10,12,13,14,15,16,17,18,29,30,31,32,33,34,35,36,37,38,39,40] Array.prototype.push.apply(arr1, arr2) } var count = 1000000 var date = Date.now() for (var i = 0; i < count; i++) { testConcat() } console.log(Date.now() - date) var date = Date.now() for (var i = 0; i < count; i++) { testPush() } console.log(Date.now() - date) 

結果:

時間:

1470
465

json什么時候用數組,如果頻繁添加刪除的盡量用json,因為這是數組的短處,如果頻繁取數據的用數組。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM