js 數(shù)組中對象排序以及比較相等

js數(shù)組排序

通過arr中對象的屬性進行排序

在往數(shù)組中存對象時,我給對象添加了個字段rowid,number類型,可以通過rowid字段對數(shù)組中的對象進行排序,關(guān)于sort具體使用可以百度W3CSchool 或者菜鳥教程,那里有詳細的介紹,網(wǎng)上也有許多的介紹,這只給排序的代碼

/*
*x,y:數(shù)組中的對象
*/
mobileArr.sort(function (x, y) {
                        return x.rowid > y.rowid ? 1 : -1;
                    });

js數(shù)組對象比較大小

我從網(wǎng)上摘了一些代碼,再加上項目需要,簡單的封裝了一下,邏輯也挺簡單的,有問題自己上網(wǎng)百度一下

//判斷相等返回 index
    var arrUtil = {
        equal: function (arr, obj) {
            if (arr.length != 0){
                for (var i = 0; i < arr.length; i++) {
                    if (equals(arr[i], obj)) {
                        return true;
                    }
                }
            } else {
                return false;
            }
            return false;
        },
        getIndex: function (arr, obj) {
            if (arr.length != 0) {
                for (var i = 0; i < arr.length; i++) {
                    if (equals(arr[i], obj)) {
                        return true;
                    }
                }
            }
            return false;
        }
    }
    
    //判斷是否相等 (下面有地址)
    function equals(x, y) {
        var in1 = x instanceof Object;
        var in2 = y instanceof Object;
        if (!in1 || !in2) {
            return x === y;
        }
        if (Object.keys(x).length !== Object.keys(y).length) {
            return false;
        }
        for (var p in x) {
            var a = x[p] instanceof Object;
            var b = y[p] instanceof Object;
            if (a && b) {
                return equals(x[p], y[p]);
            } else if (x[p] !== y[p]) {
                return false;
            }
        }

        return true;
    }    

判斷對象是否相等地址

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容