原文發佈在:http://blog.xiaofeixu.cn/2017...數組
數組應該是平常開發中最多見的數據結構了,雖然常見,可是卻不必定能優雅地處理好,JavaScript中數組的處理方法不少,各個方法的參數、返回值、是否修改原數組等也容易記混。這些方法雖然都比較簡單,可是初學的時候沒怎麼重視,後來在實際的項目中卻發現,可否靈活地運用這些方法對開發進度仍是有很大的影響的,因此在此整理一下,溫故知新。數據結構
let arr = [1,2,3,4,5]; let arr2 = arr.slice(1,3); let arr1 = arr.slice(); arr1.push([6]) let arr3 = arr1.slice(); arr3[arr3.length-1].push(7) console.log(arr) //[ 1, 2, 3, 4, 5 ] console.log(arr1) //[ 1, 2, 3, 4, 5, [ 6, 7 ] ] console.log(arr2) //[ 2, 3 ] console.log(arr3) ////[ 1, 2, 3, 4, 5, [ 6, 7 ] ]
let arr = [1,2,3,4,5] let arr3 = arr.splice(1,2,'m','n','p') console.log(arr);//[ 1, "m", "n", "p", 4, 5 ] console.log(arr3);//[ 2, 3 ]
let arr = [ 1, "m", "n", "p", 4, 5 ] let arr4 = arr.concat('abcd',[100,[101]]); console.log(arr)//[ 1, "m", "n", "p", 4, 5 ] console.log(arr4);// [ 1, "m", "n", "p", 4, 5, "abcd", 100, [101] ]
let arr = [ 1, "m", "n", "p", 4, 5 ]
let str = arr.join('-')
console.log(arr)//[ 1, "m", "n", "p", 4, 5 ]
console.log(str)//1-m-n-p-4-5code
let arr = [ 1, "p", 4, 5, 4, 5 ]
let arr6 = arr.reverse()
console.log(arr) //[ 5, 4, 5, 4, "p", 1 ]
console.log(arr6) //[ 5, 4, 5, 4, "p", 1 ]blog
let arr = [ 5, 4, 5, 4, "p", 1 ]
let str1 = arr.toString()
console.log(arr)
console.log(str1)索引
let arr = [ 1, "p", 4, 5, 4, 5, 6 ]
let l = arr.push(8)
console.log(l)// 8
console.log(arr)// [ 1, "p", 4, 5, 4, 5, 6, 8 ]
let l2 = arr.unshift(0)
console.log(l2) //1
console.log(arr) // [ 0, 1, "p", 4, 5, 4, 5, 6, 8 ]ip
let arr = [ 0, 1, "p", 4, 5, 4, 5, 6, 8 ] let ele = arr.shift(); console.log(ele)//0 console.log(arr)//[ 1, "p", 4, 5, 4, 5, 6, 8 ] let ele2 = arr.pop(); console.log(ele2)//8 console.log(arr)// [ 1, "p", 4, 5, 4, 5, 6 ]
let arr = [ 1, "m", "n", "p", 4, 5 ]
let arr5 = arr.copyWithin(1,3,6)
console.log(arr) // [ 1, "p", 4, 5, 4, 5 ]
console.log(arr5) // [ 1, "p", 4, 5, 4, 5 ]開發
這只是數組的一部分,還有數組迭代、查詢、淺複製、深複製等不少方法沒有說,下次再說吧。字符串