计算机系统应用教程网站

网站首页 > 技术文章 正文

js中的『类数组』从何而来?? js数组的数据类型

btikc 2024-10-12 12:04:47 技术文章 58 ℃ 0 评论

在最早学习jquery时,我们就接触过类数组。在学习函数的参数对象arguments时,他也是一个类数组对象。下面我们自己怎样实现一个类数组。

之前我们看到过js可以在数组array的实例上添加属性。代码:

var a = [{
 x:1
},2,{
 z:3
}];
a.x = {i:10};
console.log(a.x);
console.log(a.length);

相反呢,我们也可以实现在对象上调用数组的方法,并且还可以存储数据。

var a = {
 length:0,
 push:function(item){
 Array.prototype.push.call(this,item)
 }
};

a.push(6);
console.log(a);//{0: 6, length: 1, push: ?}
console.log(a[0])//6

在代码种我们定义了一个对象a,并且添加了一个属性length和一个方法push。当我们调用a.push方法时我们利用call方法实现调用数组原型上的push方法。但是此时对象a将我们push的数据存储在对象a的一个属性中,而且length属性的value值增加了1。我们也可以通过[]形式获取a中我们存储的数据。

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表