继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

《Javascript深入浅出》课程第一题:判断两个数组是否相似

好好学习JS
关注TA
已关注
手记 1
粉丝 0
获赞 14

《Javascript深入浅出》课程:判断两个数组是否相似

function arraysSimilar(arr1, arr2){
    var objtoString = Object.prototype.toString;
    if(objtoString.call(arr1)=='[object Array]' && objtoString.call(arr2)=='[object Array]'){
        if(arr1.length==arr2.length){
            var arr_type1 = [],
                arr_type2 = [];
            function m_arr_type(a1,a2){     
                for(var i=0;i<a1.length;i++){
                        var obj = objtoString.call(a1[i]);
                        a2[i] = (obj=='[object String]' && 1)||(obj=='[object Bloolean]' && 2)||(obj=='[object Number]' && 3)||(a1[i]+''=='undefined' && 4)||(a1[i]+''=='null' && 5)||(obj=='[object Function]' && 6)||(obj=='[object Date]' && 7)||(obj=='[object global]' && 8)||(a1[i]==window && 8)||(obj=='[object Object]' && 9);
                }
                return a2.sort();
            }
            var arr_jg1 = m_arr_type(arr1,arr_type1).toString(),
                arr_jg2 = m_arr_type(arr2,arr_type2).toString();
            if(arr_jg1 !== arr_jg2){
                return false;
            }
            return true;
        }else{          
            return false;
        }
    }else{          
        return false;
    }
}
打开App,阅读手记
5人推荐
发表评论
随时随地看视频慕课网APP