Array.prototype.check= function(){
for(var i=0;i<this.length;i++){
for(var j=i+1;j<this.length;j++){
if(this[i]==this[j]){
this.splice(i,1);
i=i-1;
}
}
}
}
var temp=[1,2,3,3,4,5,5];
temp.check();
alert(temp)
通过使用数组的原型,我们定义了方法check(),在此方法中通过比较两个数组,将相同的数据通过splice()方法去除相同的其中一个或多个,然后通过定义数组,赋予该方法进行数组的操作,得出我们需要的结果。
splice(i,1)其中i 表示的是index位置,1表示的是去除几个数据;
prototype属性(数组)
为数组的类型返回原型的引用
语法
array.prototype
备注
array参数是数组的名称。
用prototype属性为对象的类型提供一组基本功能。
对象的新的实例“继承”了赋予该对象的原型的行为。
例如,若要将方法添加到返回数组的最大元素的值的 Array 对象,请声明函数、将它添加到 Array.prototype 并使用它。
function array_max( ){
var i, max = this[0];
for (i = 1; i < this.length; i++)
{
if (max < this[i])
max = this[i];
}
return max;
}
Array.prototype.max = array_max;
var myArray = new Array(7, 1, 3, 11, 25, 9
);
document.write(myArray.max());
所有内部 JavaScript 对象都有一个只读的 prototype 属性。 可将属性和方法添加到原型中,但不能为对象分配其他原型。 但是,可以向用户定义的对象分配新的原型。