【发布时间】:2019-12-14 09:50:44
【问题描述】:
我需要扫描多个对象并形成一个唯一的键列表,它们具有相同的值:
var data1={"L1":"X","L2":"X","L1L2Relate":"AND"}
var data2={"L2":"X","L3":"X"}
输出 - 所有具有“X”值的键。
['L1','L2','L3'];
我尝试使用以下代码,但没有给出预期的结果。请建议。
function getKeyByValue(object, value) {
return Object.keys(object).find(key => object[key] === value);
}
for (i =1 ;i<=7;i++)
{
arr.push(getKeyByValue(data1,'X'));
}
【问题讨论】:
-
为什么
L1L2Relate不在您的输出中? -
@NickParsons,我认为他想要具有相同值的唯一键..
-
是唯一值键。
-
如果
data1 = { a: "X" }, data2 = { a: "notX" }怎么办?无论如何添加a?顺便说一句,否决票可能源于没有明确提出问题的问题。您已经获得了示例输入/输出和“自己的尝试”部分,但是从您的文本中,我无法说出您想要什么。 “形成一个唯一的键列表”对于您似乎真正想要做的事情来说并不是一个正确的任务描述。
标签: javascript object