偽陣列轉化真陣列 ES6 陣列方法

2021-10-12 16:50:01 字數 2044 閱讀 9297

nodelist偽陣列轉陣列,讓其擁有陣列方法

擴充套件運算子 ...

let arr = document.queryselectorall('ul li');

// 當獲取dom元素list的時候,所得到的是偽陣列,不具備陣列方法,怎麼去轉化成陣列呢

// es5之前的寫法是利用迴圈或者slice.call來轉化

let newarr = .slice.call(arr);

//demo1 es6的擴充套件運算子寫法

let newarr = [...arr]; // 此時arr就轉化成newarr,變成陣列。

array.from()作用:把偽陣列轉化成陣列(arguments,或dom元素集合)

let arr = document.queryselectorall('ul li');

let newarr = array.from(arr); // 偽陣列轉化成陣列

// string也可以轉化成array,es5之前string變成陣列是要用到split切割。

let name = 'hahaha';

let namearr = name.split(''); //arr

//es6 array.from寫法

let newnamearr = array.from(name); //arr

個人猜測,只要存在length,就可以使用array.from()讓其轉化成陣列

let json1 = 

let arr = array.from(json1); // 得到的空陣列,因為沒有length

let json2 =

let arr = array.from(json2); // ['a','b','c','d']

array.of():把一組值轉化成陣列

let arr = array.of('a','b','c');

console.log(arr); // ['a','b','c']

array.find(): 找到第乙個符合條件的元素,並返回

let arr3 = [1,2,3,45,5,6,7];

let newarr3 = arr3.find((val, index, arr) => )

console.log(newarr3); // 45,是第乙個符合條件的 元素,所以返回

// 如果沒找到符合條件的元素,返回undefined

array.findindex():返回的是符合條件元素的下標位置,和find一樣的使用方法,如果沒找到符合的元素返回-1.找到則返回符合元素的對應下標。

array.fill(填充元素,開始位置,結束位置)填充陣列

let arr5 = new array(10);

arr5.fill('預設值',1,4);

es2016新增

array.includes() // 類似於array.indexof() 區別在於,includes返回true false ,indexof返回下標或-1

ES6陣列方法

類似字串的indexof 方法 1 stringobject.indexof searchvalue,fromindex 2 3 var data 2,5,7,3,5 4 console.log data.indexof 5,x 1 x 被忽略 5 console.log data.indexof ...

es6之陣列方法

一丶類陣列 const divs document.getelementsbytagname div console.log divs htmlcollection console.log divs instanceof array false1.用es5的方法將類陣列變為陣列,借助slice方法 ...

ES6陣列方法總結

關於陣列中foreach map filter reduce some every 的總結let array 1,2,3,4 array.foreach item,index,array foreach會遍歷陣列,沒有返回值,不允許在迴圈體內寫return,不會改變原來陣列的內容.let array...