js中 类数组对象

js中 类数组对象

      • 类数组对象 自身特征:
      • 类数组对象 方法属性:
      • 常见的 类数组对象 介绍:

类数组对象 自身特征:

类数组对象首先是个对象,非null,非undefined,另外该对象长度(小于2^32)有限。可以对照代码理解一下它的含义:假设obj是一个类数组对象

obj && typeOf obj=="object"       //n非null,undefined,且是对象
&& isFinite(obj.length)      //长度有限,且为非负值,整数,小于2^32
&& obj.length >= 0  
&& obj.length ===Math.floor(o.length) 
&& obj.length < 2^32

类数组对象 方法属性:

  1. 可以使用for循环

  2. 类数组对象没有继承 Array.prototype,因此不能直接调用数组方法,不过其可以间接使用Function.call方法调用,如:Array.prototype.slice.call();

     如:
     var a={"0":"a","1":"b","2":"c",length:3};  //这是一个类数组对象
     Array.prototype.join.call(a,"+");      //"a+b+c"
     Array.prototype.slice.call(a,0);       //["a","b","c"],真正数组的副本
     Array.prototype.map.call(a,function (x) {
         return x.toUpperCase();      //["A","B","C"]
     });
    

常见的 类数组对象 介绍:

  1. Arguments对象;
  2. document.getElementsByTagName()返回一个类数组对象

arguments类数组对象 特点

  1. 它将实参以数组的形式保存着,还可以像数组一样访问实参,如arguments[0]
  2. 它也有自己独特的属性,如:arguments.callee,是当前正在执行的函数的引用;
  3. 它的长度是实参的个数arguments.length表示 参数个数。

你可能感兴趣的:(前端,js,类数组对象,arguments对象)