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的长度,并且会在已有长度上进行属性的扩展。

作者:chenze
出处:https://www.cnblogs.com/chenze-Index/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
如果文中有什么错误,欢迎指出。以免更多的人被误导。
原文地址:https://www.cnblogs.com/chenze-Index/p/10149214.html