array.from()把乙個偽陣列轉換為乙個真正的陣列
偽陣列:有下標和length,但是不能使用陣列方法
let lis = document.queryselectorall('.list li')
lis.map(item => ) is not a function
//通過form()方法轉換之後就可以使用array的方法
let lis = document.queryselectorall('.list li')
lis = array.from(lis)
let rec = lis.map(item => ) is not a function
console.log(rec);
通過...展開運算子也可以轉換為真正的陣列[...lis]
flat()
let arr = [1, 2, 3, [3, 4, 5, [7, 8, 9]]]
層數)
console.log(arr.flat(infinity));//1,2,3,4,5,6,7,8,9
flatmap()
array arr.flatmap(function callback(currentvalue[, index[, array]]) [, thisarg]) 方法首先使用對映函式對映每個元素,然後將結果壓縮成乙個新陣列。它與 map 和 深度值1的 flat 幾乎相同,但 flatmap 通常在合併成一種方法的效率稍微高一些
引數:callback
可以生成乙個新陣列中的元素的函式,可以傳入三個引數:
currentvalue
當前正在陣列中處理的元素
index可選
可選的。陣列中正在處理的當前元素的索引。
array可選
可選的。被呼叫的 map 陣列
可選引數:
thisarg
執行 callback 函式時 使用的this 值
返回值:
乙個包含將陣列與子陣列中所有元素的新陣列
arr.includes(valuetofind[, fromindex]) 判斷陣列中是否包含乙個指定的值
引數:valuetofind 需要查詢的值
可選引數:
從 fromindex 處開始向後查詢
返回值:
true 代表陣列中包含 valuetofind, false 代表陣列中不包含 fromindex
ES6新增陣列方法
1.includes 1,2,3 includes 2 indexof要去比較是否不等於 1,表達起來不夠直觀 而且它內部使用嚴格相等運算子 進行判斷,這會導致nan不等於nan 4.擴充套件運算子 console.log 1,2,3 1 2 3 主要用於函式呼叫 es5 的寫法 es6 的寫法 m...
ES6新增陣列方法
1.擴充套件運算子可以將陣列或者物件轉為用逗號分隔的引數序列 let ary 1,2,3 ary 1,2,3 console.log ary 1 2 3,相當於下面的 console.log 1,2,3 2.擴充套件運算子可以應用於合併陣列 let ary1 1,2,3 let ary2 3,4,5...
Es6新增陣列的方法彙總
1.foreach 方法 foreach 方法是迴圈遍歷陣列中的每一項,把符合條件的篩選出來成為乙個新的陣列。let arr 1 33,44 22,6 9 let ary arr.foreach function v,i console.log ary 2.some 方法 some 方法找到符合條件...