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

JavaScript高效去掉数组中的重复元素

2015-01-08 20:25 633 查看

javascriptfunction正则表达式

// 考虑 弱性判断
<script type="text/javascript">
var inArray= function(arr, elt) {
for(var i= 0, len= arr.length; i< len; i++) {
if(arr[i]=== elt) {
returntrue;
}
}
returnfalse;
};
var unique= function(arr) {
if(arr.length< 2)return arr;
var i= 0, len= arr.length; re= [];
for(; i< len; i++) {
if(!this.inArray(re, arr[i])) {
re.push(arr[i]);
}
}
return re;
};
var arr = [9,1,'3',8,7,7,6,6,5,7,8,8,7,4,3,1];// 这里的3 和 '3' 类型是不一致的,.,
alert(unique(arr));
</script>
//如果不需要考虑类型的问题 我也在给出一款
<script type="text/javascript">
var uniq = function (arr) {
var a = [], o = {}, i, v, len = arr.length;
if (len< 2) {
return arr;
}
for (i = 0; i< len; i++) {
v = arr[i];
if (o[v]!== 1) {
a.push(v);
o[v] =1;
}
}
return a;
}
var arr = [9,1,'3',8,7,7,6,6,5,7,8,8,7,4,3,1];
alert(uniq(arr));
</script>
//正则表达式去除重复元素方式

<script type="text/javascript">
oldArray = [1,2,1,3,3,4,5,5,6,7,2,2,9,8,9]
var str = oldArray.join(" ");
var reg = /([^ ]+)(.*)/1/g;
while(str.match(reg)) str = str.replace(reg, "$1$2 ")
alert(str.split(" "));
</script>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: