封装day.js

时间:2022-12-01 15:40:59

 js伪数组

伪数组是一个含有 length 属性的json对象,按索引方式存储数据,它不具有数组的一些方法,能通过Array.prototype.slice.call()或者Array.from()转换为真正的数组

var obj = {0:'z',1:'z',2:'x',length:3}; // 伪数组
var arr = Array.prototype.slice.call(obj); // 转化为数组
console.log(arr); //["z", "z", "x"]

常见的伪数组:函数内arguments对象,还有像调用 getElementsByTagName , document.childNodes 之类的DOM 对象列表,jQuery 对象(比如 $("div"))

Array.prototype.slice.call() 和 [].slice.call都可以转换伪数组,但是通过prototype的形式执行程序效率更高,同样代码也更加优美