为了账号安全,请及时绑定邮箱和手机立即绑定

我写的代码,感觉挺容易理解的,有需要的可以看下

        function arraysSimilar(arr1, arr2){

        var narr1=new Array();

        var narr2=new Array(); 

        if(arr1 instanceof Array==false||arr2 instanceof Array==false){

        return false

        }

        else if(arr1.length==arr2.length){

        for(var i=0;i<arr1.length;i++){

        narr1[i]=typeof arr1[i];

        narr2[i]=typeof arr2[i];        

        }

        for(var i=0;i<arr1.length;i++){

        for(var j=0;j<arr2.length;j++){

        if(narr1[i]==narr2[j]&&narr1[i]!='object'){

        narr1[i]=true;

        narr2[j]=true;

        break;

        }

          else if(narr1[i]==narr2[j]&&narr1[i]=='object'){

          if(arr1[i]==null||arr2[j]==null){

          if(arr1[i]==null&&arr2[j]==null){

          narr1[i]=true;

          narr2[j]=true;

          break;

          }

         

          }

          else if(arr1[i].constructor==arr2[j].constructor){

          narr1[i]=true;

                    narr2[j]=true;

          break; 

          }

          }        

          

        }

        }

        for(var i=0;i<arr1.length;i++){

        if(narr1[i]!=true){        

        return false;

        break;

        }        

        }

        return true;

        }

        else

        return false;

        }


正在回答

2 回答

写个注释啊

1 回复 有任何疑惑可以回复我~
#1

hins_ 提问者

非常感谢!
2017-08-28 回复 有任何疑惑可以回复我~
#2

hins_ 提问者

额忘记了
2017-08-28 回复 有任何疑惑可以回复我~

提个问题

题目中定义的数组相似概念包括了:1.A和B都是数组 2.A和B长度相同 3.A和B类型相同 ,关于第三点很多人的理解不同,从参考答案的写法来看,这里的类型相同不光是A的子元素有的类型B都有之外,每种类型的子元素的个数都应对应相等,如A=[String1,String2,String3,Num1,Num2]和B=[String1,String2,Nun1,Num2,Num3]的判定结果应该是不相似的,很多人都没有考虑这一点

2 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

我写的代码,感觉挺容易理解的,有需要的可以看下

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信