如果我使用JavaScript搜索“附录”,如何找到该号码?

时间:2011-08-23 16:49:59

标签: javascript

我有一个如下对象:

var RevenueCodes = {
            41020: "Addendum",
            41040: "Cardiology Assessment",
            41060: "Chiropractic Assessment",
            41290: "Neurology File Review - CAT",
            41240: "Neurology Assessment"
            }

如果我使用JavaScript搜索“附录”,如何找到该号码?

4 个答案:

答案 0 :(得分:0)

我会有两个变量,RevenueByCodeCodeByRevenue,前者是你拥有的,后者是相同的,除非键/值反转,所以你可以在必须(可能)通过循环第一个变量来设置第二个变量的费用。

你可以做到

var code;
for (var key in RevenueCodes) {
   var val = RevenueCodes[key];
   if (val === 'Addendum') code = key;
}

获取代码(您应该优化一下),如果您想这样做,也可以使用相同的循环结构来设置其他查找。

答案 1 :(得分:0)

var number;
for(var key in RevenueCodes) { // iterate
    if(RevenueCodes.hasOwnProperty(key) && RevenueCodes[key] === "Addendum") {
        // if it's not a prototype property and the value is Addendum, store key
        // as number and stop the loop
        number = key;
        break;
    }
}

答案 2 :(得分:0)

您可以使用for...in枚举对象属性。

var RevenueCodes = {
  41020: "Addendum",
  41040: "Cardiology Assessment",
  41060: "Chiropractic Assessment",
  41290: "Neurology File Review - CAT",
  41240: "Neurology Assessment"
};
for (var propertyName in RevenueCodes) {
  if (RevenueCodes[propertyName] === "Addendum") {
    console.log("property name: %s", propertyName);
    break;
  }
}

答案 3 :(得分:0)

Javascript有直接的方式来做到这一点。你需要遍历所有的键,比较值然后选择正确的值。如果你想重复这样做,你需要构建一次反向映射并使用它...