【问题标题】:Iterate one for in loop through multiple objects in JavaScript在 JavaScript 中通过多个对象循环迭代一个 for
【发布时间】:2014-11-29 22:24:06
【问题描述】:

我有两个 JSON 对象 obj1obj2。我想比较这些对象的值。

var obj1 = {"Don":"Test1","is":"hey","here":"yeah"};
var obj2 = {"Don":"Test1","is":"20","here":"lol"};

我想做这样的事情:

for( var key1 in obj1 && var key2 in obj2){
  if(obj1.hasOwnProperty(key1) && obj2.hasOwnProperty(key2))
    console.log(obj1[key1]+ " : " + obj2[key2]);
}

我的输出应该是:

Test1:Test1
hey:20
yeah:lol

【问题讨论】:

  • 你需要一个嵌套循环
  • obj2.hasOwnProperty(key2)
  • @DOCSAREL 已更正
  • @Johan 但如何比较两者的键值?我想同时迭代这两个对象,以便可以比较各自的值。

标签: javascript json loops iteration for-in-loop


【解决方案1】:

只需使用键(Object.keys 仅返回可枚举的属性):

var obj1 = {"Don":"Test1","is":"hey","here":"yeah"};
var obj2 = {"Don":"Test1","is":"20","here":"lol"};
Object.keys(obj1).forEach( function (key) { console.log(obj1[key]+':'+obj2[key]); } );

See also ...

【讨论】:

    猜你喜欢
    • 2020-11-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-02-23
    • 1970-01-01
    • 1970-01-01
    • 2013-03-23
    • 1970-01-01
    相关资源
    最近更新 更多