JS判断数组中是否有重复值得三种实用方法
1个回答
展开全部
//先排序,相邻两个元素相同即为重复
Array.prototype.isRepeat1 = function() {
this.sort();
var result = [this[0]];
for (var i = 1; i < this.length; i++) {
if (this[i] == result[result.length - 1]) {
return true;
}
}
return false;
};
//循环,把元素放入map中,如果在map中能找到就说明重复
Array.prototype.isRepeat2 = function() {
var map = {}, result = [];
for (var i = 0; i < this.length; i++) {
if (map[this[i]]) {
return true;
}
map[this[i]] = true;
}
return false;
};
//用indexOf/lastIndexOf返回的位置比较判断是否重复
Array.prototype.isRepeat3 = function() {
for (var i = 0; i < this.length; i++) {
if (this.indexOf(this[i]) != i){
return true;
}
}
return false;
};
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询