【目录】
【类数组】
定义:
- 不具有数组的所具有的方法
- 拥有length属性,其属性(索引)为非负整数
类数组
var obj = { 0 : "a", 1 : "第二", 4 : "1234", length : 3 }; console.log(obj);
没有length属性,所以就不是类数组。
var obj = { 0 : "a", 1 : "第二", 4 : "1234" }; console.log(obj);
有时候使用类数组最好的方式就是转化为数组
可以通过splice方法去转换。
1 var obj2= { 2 a: "a", 3 1: "第二", 4 4: "1234", 5 length:4, 6 splice : Array.prototype.splice, 7 }; 8 console.log(obj2);
这时就可以使用数组的方法了
1 var obj1 = { 2 0: "a", 3 1: "第二", 4 4: "1234", 5 length: 3, 6 push: Array.prototype.push 7 }; 8 obj1.push("这是新加的"); 9 console.log(obj1);
要注意的是,如果调用push方法,会动态的去改变length的长度,并且会在已有长度上进行属性的扩展。