我试图解决我的JavaScript问题。我有一个有很多属性的对象。我想迭代属性以查找用户输入的所有条目。我写了一个for..in-loop但它没有给我任何信息。
有什么想法吗?
var numbers = {
"Group1": "3300",
"Group2": "1200",
"Group3": "5000"
};
function test(){
var input = document.getElementById("inputTxt").value;
for(var group in numbers){
if(numbers[group] == input){
console.log(numbers[group])
}
}
}
此代码在我的控制台中没有记录任何内容。我究竟做错了什么?
谢谢!
答案 0 :(得分:1)
尝试
Object.keys(numbers).forEach((key) => {
if (numbers[key] == input) {
console.log(key + " " + numbers[key]);
}
});
答案 1 :(得分:1)
我在这里创建了一个plnkr,
https://plnkr.co/edit/cpdipV2qxAUa4pHtdKqA?p=preview
似乎有效
for(var group in numbers){
if(numbers[group] == input){
console.log(numbers[group])
}
}
答案 2 :(得分:0)
适用于for循环
var numbers = { "Group1": "3300", "Group2": "1200", "Group3": "5000" };
var input = "3300";
for(var group in numbers)
if(numbers[group] == input)
console.log(group + " " + numbers[group]); // Group1 3300