0

我从 JSON 接收字符串,需要将它们与整数相关联。因此,例如我目前使用这种方法:

var foo = "This is my string";
var bar;

if (foo === "This is my string"){
   bar = 3000;
} else if (foo === "Some other string"){
   bar = 30001;
}

问题是我需要关联大约 50 个字符串,而且似乎可以以更有效的方式完成这一巨大的 if/else 语句块。

有没有什么方法可以让这些关联更加简洁高效?

干杯

4

3 回答 3

3

尝试使用一个对象,如下所示:

dict = {
     "This is my string": 3000,
     "Some other string": 30001,
     etc
}

bar = dict[foo]
于 2012-07-12T20:54:08.927 回答
1

创建地图:

var lookup = {
    "This is my string": 3000,
    "Some other string": 30001
};

并设置bar为表中的正确值:

var bar = lookup[foo];
于 2012-07-12T20:54:42.527 回答
1

请参阅我关于可能重复替代一百万个 IF 语句的详细答案

在你的情况下,它会像

var bar = {
   "This is my string": 3000,
   "Some other string": 30001,
   ...
}[foo];
于 2012-07-12T20:56:25.547 回答