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 に答える