陣列的遍歷
for:
普通版:for(let i=0; i優化版:for(let i=0,len=arr.length; i弱化版:for(let i=0; arr[i] != null; i++)
foreach: arr.foreach((e, index) => ) 效能比for要弱
變種:array.prototype.foreach.call(arr, (el, index) => ) 實際效能要比普通的foreach弱
for...in... :for(let i in arr) 效率最低
for...of...:for(let i of arr) 效能好於forin
map:arr.map((n) => ) 實際效率還比不上foreach
every():陣列的每一項都滿足給定條件則返回true
arr = [1, 2, 3, 4];
arr.every((item,index,array) => ); // false
arr.some((item,index,array) => ); //true
arr.filter((item,index,array) => ); // [3, 4]
arr; // [1, 2, 3, 4]
arr.reduce((prev, cur, index, array) => ); // 10
(函式返回的任何值都會作為第乙個引數傳給下一項)
some():陣列中只要有一項滿足條件就返回true
filter():返回滿足給定條件的資料項組成的新陣列,不改變原陣列
reduce():遍歷陣列,歸併方法
陣列的操作
push():向陣列的末尾新增乙個或多個元素,並返回新的長度
pop():刪除陣列的最後乙個元素,陣列的長度減1,並且返回刪除元素的值(陣列為空時,不改變陣列,並返回undefined)
unshift():向陣列的頭部新增乙個或多個元素,返回新的長度
shift():刪除並返回陣列的第乙個元素
reverse():顛倒陣列中的元素順序
sort():對陣列元素進行排序(預設按照ascii)
var arr = [10,5,1000,25,1];
arr.sort(); // [1, 10, 1000, 25, 5] 預設按照首字母順序排
arr.sort((a, b)=>); // [1, 5, 10, 25, 1000] 從大到小排序
concat():鏈結兩個或多個陣列
join():把所有的元素放進乙個字串,通過指定的分隔符分割
splice():刪除元素,並向陣列新增新元素
var arr = [1, 2, 3, 4, 5, 6];
arr.splice(2, 3); // [3, 4, 5] 刪除第三個元素以後的三個陣列元素
arr.splice(2, 0, 7, 8); // 在第三個元素之前插入7和8
arr; // [1, 2, 7, 8, 9]
arr.splice(2, 3, 9, 10); // [7, 8, 9] 刪除第三個元素以後的三個陣列元素,並用9和10代替
arr; // [1, 2, 9, 10]
slice(start, end):從某個已有的陣列返回選定的元素(沒有end引數時就到陣列結尾)
indexof(x, start)、lastindexof():查詢陣列元素的位置,引數:要查的項和起點位置索引
js 陣列的操作彙總
最近在js中使用陣列比較頻繁,為了方便使用,把網上收集的js的陣列操作和自己在 中的方法做乙個整理,記錄下來,方便後面的使用和查閱 一 一維陣列轉換成二維陣列 該 執行後,y 儲存陣列 x 中的最大值,或說 6。3 constructor 屬性 表示建立物件的函式。object.constructo...
js陣列常用操作方法彙總 filter
filter 的作用是返回某一陣列中滿足條件的元素,該方法返回的是乙個新的陣列 返回文字長度大於6的陣列元素 var words spray limit elite exuberant destruction present var longwords word.filter function wo...
JS陣列方法彙總
js陣列方法彙總 shift 刪除原陣列第一項,並返回刪除元素的值 如果陣列為空則返回undefined var a 1,2,3,4,5 var b a.shift a 2,3,4,5 b 1 unshift 將引數新增到原陣列開頭,並返回陣列的長度 var a 1,2,3,4,5 var b a....