Let's go

JS_类数组

 【目录】

 

 

【类数组】

什么是类数组?

定义:

  • 不具有数组的所具有的方法
  • 拥有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的长度,并且会在已有长度上进行属性的扩展。

 

posted @ 2018-12-20 14:37  chenze  阅读(280)  评论(0编辑  收藏  举报
有事您Q我