javascript或jquery如何比较两个数组,并返回不重复的值
比如:arr1="1,2,3"arr2="3,1"如何ruturn"2"注arr1或arr2有可能是乱序!...
比如:
arr1="1,2,3"
arr2="3,1"
如何ruturn "2"
注arr1或arr2有可能是乱序! 展开
arr1="1,2,3"
arr2="3,1"
如何ruturn "2"
注arr1或arr2有可能是乱序! 展开
4个回答
展开全部
循环一个数组中嵌套循环第二个数组,把没有找到的值放入返回的数组中,
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就是你要的答案
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就是你要的答案
展开全部
<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>
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>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
换个思路你先把数组进行排序,排序方式随便但要统一,
再进行比较就行了,写个例子
var a=[1,2,3];
var b=[2,1,3];
alert(a.sort().toString()==b.sort().toString());
结果是true
至于你说返回不同的值,那么你需要排序以后进行
遍历比较用一个变量记录不同的值
再进行比较就行了,写个例子
var a=[1,2,3];
var b=[2,1,3];
alert(a.sort().toString()==b.sort().toString());
结果是true
至于你说返回不同的值,那么你需要排序以后进行
遍历比较用一个变量记录不同的值
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2012-08-10
展开全部
排序之后遍历数组
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |