類數組轉化爲真實的數組

問題:

我們日常編程的過程中,經常使用數組的遍歷,但是某些集合是類數組不是真正的數組,所以我們不能使用 map,forEach等方法進行遍歷。

比如:

var eleArr = document.querySelectorAll('li');
var eleArr = document.getElementsByClassName('li');

獲取的都是一個類數組的概念。不能使用map和forEach等,但是可以使用for循環遍歷(目前還不知道for爲什麼可以)

解答:

1.使用Arrray.from()--ES6

2.[].slice.call(eleArr) 或則 Array.prototype.slice.call(eleArr)

示例:

let eleArr = document.querySelectorAll('li');

  Array.from(eleArr).forEach(function(item){

  alert(item);

});
let eleArr = document.querySelectorAll('li');

  [].slice.call(eleArr).forEach(function(item){

  alert(item);

});

 

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