通过了,但是觉得 会不会这写法太臃肿了?

来源:1-6 编程练习

freewings

2019-12-08 21:29


function arraysSimilar(arr1, arr2){

            var result = false;

            var arr1Type = Object.prototype.toString.call(arr1);

            var arr2Type = Object.prototype.toString.call(arr2);

            var typeObj={}; 

            if(arr1Type=='[object Array]'&&arr2Type=='[object Array]'){

                result = arr1.length==arr2.length;

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

                    var type = Object.prototype.toString.call(arr1[i]);

                    typeObj[type] = true;

                }

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

                    var type = Object.prototype.toString.call(arr2[i]);

                    if(typeof typeObj[type]!=="undefined"){

                        result = true;               

                    } else {

                         result =false;

                         return result;

                    }

                }

            }            

            return result;

        }



写回答 关注

2回答

  • qq_慕九州1589341
    2020-01-03 10:41:51

    你确定你这个能通过吗 arr.length不会报错?而且arraysSimilar([{},{},{}],[{},{},null])返回false结果不对

    freewi...

    确实 是写错了。谢谢提醒

    2020-01-03 10:52:56

    共 1 条回复 >

  • 慕先生2131818
    2019-12-19 15:39:51

    ?不臃肿

JavaScript深入浅出

由浅入深学习JS语言特性,且解析JS常见误区,从入门到掌握

281101 学习 · 1020 问题

查看课程

相似问题