比较两个对象的值和键

时间:2019-03-06 16:41:34

标签: javascript object

大家好。

我有

Object A = {
  "a" : "3.1.2",
  "b" : "4.1.1",
  "c" : "3.0.0",
  "y" : "5.0.0"
}

Object B = {
  "a" : "^3.1.2",
  "t" : "^4.1.1",
  "c" : "~2.2.2"
}

我如何检查对象B是否获得与对象A中相同的密钥? If the key in Object A === key in Object B,检查该键的值。 如果该键的值相同,则不执行任何操作。 如果来自Object A !=== value in Object B的值,则在下一个示例["c@3.0.0"]中将其推入数组 如果key in Object A中不存在Object B,请立即将对象A的键和值推到同一数组["c@3.0.0", "y@5.0.0"]

1 个答案:

答案 0 :(得分:1)

您可以使用Object.entries()Array.reduce()String.replace()来做到这一点。

迭代对象A的条目,对于每个条目,检查B中是否有条目。如果没有,则将值推入数组。如果存在条目且版本号相同,则什么都不做,否则也将其推入数组。

要比较版本号,可以在比较值之前使用正则表达式(newdf=df[df['b'].str.upper().str.contains('|'.join(search_list),na=False)] )删除第一个/^\^|~/^

~