您的位置:首页 > Web前端 > JavaScript

js类数组对象使用数组方法的安全方式

2015-11-18 00:00 639 查看
摘要: 如果类数组对象需要使用数组的方法,不要去继承数组,而应该使用Array.prototype.xxx.apply(obj,[]);的方法;如果要用到length计算属性数量,记得正确初始化length属性的值。

要想在各浏览器中表现一致:

如果类数组对象需要使用数组的方法,不要去继承数组,而应该使用Array.prototype.xxx.apply(obj,[]);的方法;

如果需要用到length计算属性数量,记得正确初始化length属性的值。

function myarr(){
this[0]='cc';
this.length=1;//多加一个length的初始化
}
var m=new myarr();
Array.prototype.push.apply(m,['cson','lai','xiaoc']);
alert(m.length);//输出4
alert(m[2]);//输出’lai‘


array跟普通的object对象最大的区别就是 array调用push等方法时, 引擎会帮你自动维护length属性.

而ie6 7下必须先初始化length属性的原因是, 它没有把length=undefined转化为length=0
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  js类数组对象