var a=[1,2,3,4];
var b=[1,2,5,6];
var c=[];
for(var i=0;i<a.legnth;i++){
for(var j=0;j<b.legnth;j++){
if(a[i]==b[j])
c.push(a[i])
}
}

console.log(a,b,c)

解决方案 »

  1.   

    有1,2
    你的console.log有问题,你可以试一试
            var a=[1,2,3,4];
    var b=[1,2,5,6];
    var c=[];
    for(var i=0;i<a.length;i++){
    for(var j=0;j<b.length;j++){
    if(a[i]==b[j])
    c.push(a[i]);

    }
    }
    //c.pop();
    for(var t =0;t<c.length;t++)
         alert(c[t]);
        document.write(c);
      

  2.   

    legnth??! Or length! 是 lz 自己搞怪吧!L@_@K
    var a=[1,2,3,4];
    var b=[1,2,5,6];
    var c=[];
    for(var i=0;i<a.length;i++){
        for(var j=0;j<b.length;j++){
            if(a[i]==b[j])
            c.push(a[i])
        }
    }
    document.write(c);
      

  3.   

    呵呵,因为 a.legnth // undefined
    i < a.legnth // false所以,压根就没进循环,js 就是这样滴,能跑就跑,跑不下去时才会报一个莫名其妙滴错误及行号!
    写js就要胆大心细,嘎嘎
      

  4.   

    补充一句,a.constructor 是 Array,即 object,object 滴动态属性滴默认值是 undefined,
    而非 null,因此也就没有报错!