请高手帮忙写一段JS代码!成功追加100分!
要求:有四个数组,如a="a,c,b,d,g",a1="4,2,3,6,5"a和a1个数相同,且一一对应。b="a,g,d,f,h",c="1,3,2,2,6",b和C个...
要求 :有四个数组,如a="a,c,b,d,g",a1="4,2,3,6,5"a和a1个数相同,且一一对应。
b="a,g,d,f,h",c="1,3,2,2,6",b和C个数是相同的,且一一对应,现在是要求a与b的并集,并去掉对应两者的C的值,也就是说,得到两个值,
k应该="a,c,b,d,g,f,h", 另一个值y="2,6"最后,y1=a1+y=”4,2,3,6,5,2,6“
简单说就是b中有a的改为了a1对应的值,b中没有a的还保持中对应的值! 展开
b="a,g,d,f,h",c="1,3,2,2,6",b和C个数是相同的,且一一对应,现在是要求a与b的并集,并去掉对应两者的C的值,也就是说,得到两个值,
k应该="a,c,b,d,g,f,h", 另一个值y="2,6"最后,y1=a1+y=”4,2,3,6,5,2,6“
简单说就是b中有a的改为了a1对应的值,b中没有a的还保持中对应的值! 展开
1个回答
展开全部
<head>
<title>new html page</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script>
a=['a','c','b','d','g'];
a1=[4,2,3,6,5];
b=['a','g','d','f','h'];
b1=[1,3,2,2,6];
function arrInter(arg1,arg2,val1,val2){
var argo = {};
for(var i = arg1.length - 1; i >= 0 ; i--){
argo[arg1[i]] = val1[i];
}
var argi = arg1.concat([]);
for(i = 0; i < arg2.length; i++){
if(!argo[arg2[i]]){
argi.push(arg2[i]);
argo[arg2[i]] = val2[i];
}
}
var val="";
for(var j= 0; j<argi.length; j++){
val+=argo[argi[j]]+",";
}
alert("y="+val);
return argo;
}
function load(){
var x = arrInter(a,b,a1,b1);
var rs="";
for(var i in x){
rs+=i+"="+x[i]+" ";
}
alert(rs);
}
</script>
</head>
<body onload="load()">
</body>
哦惯性思维了,我以为你要对象,如果只要值把load()去掉就行了
<title>new html page</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script>
a=['a','c','b','d','g'];
a1=[4,2,3,6,5];
b=['a','g','d','f','h'];
b1=[1,3,2,2,6];
function arrInter(arg1,arg2,val1,val2){
var argo = {};
for(var i = arg1.length - 1; i >= 0 ; i--){
argo[arg1[i]] = val1[i];
}
var argi = arg1.concat([]);
for(i = 0; i < arg2.length; i++){
if(!argo[arg2[i]]){
argi.push(arg2[i]);
argo[arg2[i]] = val2[i];
}
}
var val="";
for(var j= 0; j<argi.length; j++){
val+=argo[argi[j]]+",";
}
alert("y="+val);
return argo;
}
function load(){
var x = arrInter(a,b,a1,b1);
var rs="";
for(var i in x){
rs+=i+"="+x[i]+" ";
}
alert(rs);
}
</script>
</head>
<body onload="load()">
</body>
哦惯性思维了,我以为你要对象,如果只要值把load()去掉就行了
追问
不错,但我要得到的是两个数组,z=上面代码里的alert("y="+val);
搞定了)
y=a和b的交集(这个我没搞定),应该是得到一z中对应的代码的值,也就是,a,c,b,d,g,f,h
追答
里面就有额。。 argi就是那个数组,对象都出来了怎么可能没那个数组呢 你把argi alert出来就是a,c,b,d,g,f,h
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询