不要使用splice進行數組的操作!!

最近在給軍工項目進行三維開發,對數組操作不可謂之多,最影響效率的數組操作即是splice操作

首先說一下什麼是數組的splice
他可以刪除數組某幾個成員,也可以在任意位置插入或替換成員(替換成員原理是先刪除後插入)
eg:

let arr = [{a: 1},{b:2},{c:3}]
arr.splice(1,1) // splice會修改原數組,影響效率原因後面說
// 結果arr:[{a: 1},{c:3}] 
 *********************替代方案*************************
 let arr = [{a: 1},{b:2},{c:3}]
 arr = arr.slice(0,1).concat(arr.slice(2))
 // 結果arr:[{a: 1},{c:3}] 

-------------------------------------------------------
對於插入來講也是一樣
let arr = [{a: 1},{b:2},{c:3}]
arr.splice(1,1,{d,4}) // splice會修改原數組,影響效率原因後面說
// 結果arr:[{a: 1},{d,4},{c:3}] 
 *********************替代方案*************************
 let arr = [{a: 1},{b:2},{c:3}]
 arr = arr.slice(0,1).concat({d,4},arr.slice(2))
 // 結果arr:[{a: 1},{d,4},{c:3}] 

在這裏插入圖片描述
其他參考https://zswfx.com/articles/5da713302ddd022595ff506a

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章