類陣列轉陣列的方法
阿新 • • 發佈:2018-12-18
有時候我們需要對類陣列處理,比如最常見的是函式的引數arguments,document.getElementsByTagName()
類陣列的特點:
1、擁有length屬性,其他屬性(索引)為非負整數。
2、不具有陣列所具有的方法
例如:var arguments = {length:2,0:'a',1:'b'};
方法一:迴圈類陣列,並把子項新增到一個空陣列中
var arguments = {length:2,0:'a',1:'b'};
var ary = [];
for(var i =0; i<arguments.length;i++){
ary.push(arguments[i])
}
方法二:使用陣列的slice()方法
var arguments = {length:2,0:'a',1:'b'};
var ary = Array.prototype.slice.call(arguments)
或者
var ary = [].slice.call(arguments)
方法三:es6中陣列的新方法from()
var arguments = {length:2,0:'a',1:'b'};
var ary = Array.from(arguments);