javascript或jquery如何比较两个数组,并返回不重复的值

比如:
arr1="1,2,3"
arr2="3,1"
如何ruturn "2"

注arr1或arr2有可能是乱序!

循环一个数组中嵌套循环第二个数组,把没有找到的值放入返回的数组中,
var arr3=new ArrayList();
for(var i=0;i<arr1;i++){
var stra=arr1[i];
var count=0;
for(var j=0;i<arr2;j++){
var strb=arr2[j];
if(stra==strb){
count++;
}
}
if(count==0){//表示数组1的这个值没有重复的,放到返回列表中
arr3.push('stra');
}
}

arr3就是你要的答案
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-08-10
<script>var obj=[];//创建一个空数组,用来装填[color=#FF0000]关联数组[/color]
var wantArr=[]; //创建一个空数组,用来保存我们要的结果var arr=['a','b','c','d','a','d']; //要剔除重复元素的源数组
for(var i=0;i<arr.length;i++){
//关键在这里:用arr中的每个元素值做关联数组的“关联名”;同时也用它做关联值!
//循环中,如果遇到arr的某个与前面重复的元素时,它将覆盖那个“关联名”元素!等于剔除了重复元素
obj[arr[i]]=arr[i];
}
//其实到了这里我们已经得到了想要的结果obj[];但由于它是关联数组,取值、运算不很方便,所以就多做一些工作,把它变换为纯数组wantArr[]:
for(var pro in obj){
wantArr.push(obj[pro])
}
alert(wantArr)
</script>
第2个回答  2012-08-10
换个思路你先把数组进行排序,排序方式随便但要统一,
再进行比较就行了,写个例子
var a=[1,2,3];
var b=[2,1,3];
alert(a.sort().toString()==b.sort().toString());
结果是true
至于你说返回不同的值,那么你需要排序以后进行
遍历比较用一个变量记录不同的值
第3个回答  2012-08-10
排序之后遍历数组

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网