簡體   English   中英

如何比較兩個對象

[英]How to compare two objects

我有一個場景,其中有兩個不同的對象。

實現方案:

從兩個對象中,我需要匹配具有“ A1”,“ B2”等的值。

由於兩個對象值的順序都不正確,因此循環中斷並丟失了一些值。

在我的演示中,object1具有相同的重復值,即“ C3”,應該僅顯示一次。

所需的最終輸出是,我只需要檢測兩個對象中匹配的值並顯示其相應的“ a”和“ b值”。

我已經嘗試了將近90%,但在某個小錯誤使我的循環中斷的地方,請幫幫我。

樣例代碼:

for(var i=0;i<obj1.results[0].loc.length;i++){
    var findA = obj1.results[0].loc[i].anc[0].title;
    for(var j=0;j< obj2.ILoc.length;j++){
        var findB = obj2.ILoc[j].ais;
        if(findA == findB) {
            var a = obj1.results[0].loc[i].a;
            var b = obj1.results[0].loc[i].b;
            console.log(a);
            console.log(b);
        }       
    }
}

這是我嘗試過的: 演示鏈接

我建議使用for ... in循環,因為您使用的是對象而不是數組。

for (variable in object) {...
}

如果兩個對象的length屬性相等,那么單獨使用這種循環將有助於您輕松比較對象。

我建議使用diff模塊 您可以在node.js和瀏覽器中使用它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM