问答详情
源自:1-6 编程练习

请参考参考。

function arraysSimilar(arr1, arr2) {

            // 判断是否是数组

            if (!(arr1 instanceof Array)) { return false }

            if (!(arr2 instanceof Array)) { return false }

            // 判断长度是否相等

            if (arr1.length !== arr2.length) { return false }


            // 检测数组每一项的数据类型,排序返回新数组

            let type1 = arr1.map(item => {

                return Object.prototype.toString.apply(item);

            }).sort();

            let type2 = arr2.map(item => {

                return Object.prototype.toString.apply(item);

            }).sort();


            // 对比两组类型,some()方法,全相等,返回true,只要有一项不等,则返回false。

            let res=type1.every((item,index)=>{

                return item===type2[index];

            });

            return res;

        }



提问者:慕工程8318248 2020-09-26 19:16

个回答

  • 突突突哒哒哒
    2022-04-19 13:51:02

    用 ||  是不是会简单一点