码迷,mamicode.com
首页 > 编程语言 > 详细

js类数组

时间:2016-09-29 15:37:56      阅读:177      评论:0      收藏:0      [点我收藏+]

标签:

类数组 - [ Array-like ] : objects

1. what‘s Array-like

  类数组和数组很像,但是数组的很多方法却不能用,这就很尴尬了~

  像 arguments、nodelist 等这些数据有序集合,有长度和下标等属性,但却不是 Array. 这就是所谓的 Array-like(类数组/伪数组)。对于 Array-like 我们可以用跨原型链来操作,eg :Array.prototype.slice.call(arguments, 0); 这也是把 Array-like 转化成 Array 的方法哦。

2. 自己构造 Array-like 

  技术分享

  就是添加 Array 的原生方法到 自己创建的 Object 里。

  如果不给 a 添加 length 属性。push 的时候会把 a[0] 和 a[1] 覆盖掉。

3. 如何判断是不是 Array

  typeof去判断数组得到的结果是 ‘object’,所以很多 LIB 都采用了 duck typing(鸭子类型检测)的方式,它的判断条件是: 当对象的 length 属性是一个数字,并且 splice 属性是一个 function, 那么这个对象就是数组。

 

 

 

  

  

 

js类数组

标签:

原文地址:http://www.cnblogs.com/xinxingyu/p/5920039.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!