欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

JS之类数组

程序员文章站 2022-06-21 18:14:22
类数组 什么是类数组? 定义: 拥有length属性,其属性(索引)为非负整数 不具有数组的所具有的方法 类数组与非类数组的比较 类数组: 非类数组: 没有length属性,所以就不是类数组。 javascript中常见的类数组有arguments对象和DOM方法的返回结果。 比如 document ......

类数组

  什么是类数组?

定义:

  • 拥有length属性,其属性(索引)为非负整数
  • 不具有数组的所具有的方法

类数组与非类数组的比较

 

  类数组:

1 var obj = {
2                 0 : "a",
3                 1 : "第二",
4                 4 :    "1234",
5                 length : 3
6             };
7             console.log(obj);

 

 

 非类数组:

1 var obj = {
2                 0 : "a",
3                 1 : "第二",
4                 4 :    "1234"
5             };

没有length属性,所以就不是类数组。

javascript中常见的类数组有arguments对象和dom方法的返回结果。

比如 document.getelementsbytagname()。

 

类数组对象转化为数组:

  有时候使用类数组最好的方式就是转化为数组

可以通过splice方法区转换。

1 var obj = {
2                 0 : "a",
3                 1 : "第二",
4                 4 :    "1234",
5                 length : 4,
6                 splice : array.prototype.splice,
7             }

JS之类数组

这时就可以使用数组的方法,

例如

 

var obj = {
                0 : "a",
                1 : "第二",
                4 :    "1234",
                length : 4,
                push : array.prototype.push,
                splice : array.prototype.splice
            }
            obj.push("这是新加的");

JS之类数组

要注意的是,如果调用push方法,会动态的去改变length的长度,并且会在已有长度上进行属性的扩展。