首頁  >  文章  >  web前端  >  js將偽數組轉換為標準數組的多種方法

js將偽數組轉換為標準數組的多種方法

巴扎黑
巴扎黑原創
2016-12-06 10:15:051434瀏覽

在js中,數組是特殊的對象,凡是對像有的性質,數組都有,數組表示有序資料的集合,而對象表示無序資料的集合。

那偽數組是什麼呢,當然它也是對象,偽數組一般具有以下特點:

那偽數組是什麼呢,當然它也是對象,偽數組一般具有以下特點:

按索引方式存儲資料;

具有length屬性;

沒有數組的push、shift、

具有length屬性;

沒有數組的push、shift、

等方法

function的arguments對象,還有getElementsByTagName、ele.childNodes等返回的NodeList對象,或是自訂的某些對象,這些都可以是偽數組。

我們可以透過以下幾種方式將偽陣列轉換為標準陣列:

使用Array.prototype.slice.call();


Js程式碼  

Array.prototype.slice.call({  
 0:"likeke",  
 1:12,  
 2:true,  
 length:3  
});  
//["likeke", 12, true]

 使用[].slice.使用[].slice.原型鏈的都知道,實際上這種方法和第一中方法是一樣的,但上面第一種方式相對效率更高。


Js代碼  

[].slice.call({  
 0:"likeke",  
 1:12,  
 2:true,  
 length:3  
});  
//["likeke", 12, true]

使用ES6中Array.from方法;


Js代碼  🎜
Array.from({  
 0:"lk",  
 1:12,  
 2:2013,  
 3:"长安大学",  
 length:4  
});  
//["lk", 12, 2013, "长安大学"]
🎜🎜🎜Js代碼  🎜rrreee🎜🎜🎜Js代碼  🎜rrreee🎜🎜🎜
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn