0

INJavaScriptの演算子に関して少し問題があります。

私たちが知っているように、冗長な論理 OR を簡素化します。

私は次の声明を持っています:

if(value==="abc" || value==="cde" || value==="efg" || ...){
 ...
}

私は使用できます

if(value in { "abc":1, "cde":1, "efg":1, ... }){
  ...
}

例としてこれを書きましたが、Google Chrome Console でエラーが発生します。

Uncaught SyntaxError: Unexpected token : 

私の間違いはどこですか?

4

3 に答える 3

0

アプリのどこかが変更された場合にバグを回避するにObject.prototypeは、次を使用する必要があります。

if(({ "abc":1, "cde":1, "efg":1, ... }).hasOwnProperty(value)){
  ...
}
于 2012-08-17T09:45:07.163 に答える
-1

このように簡単に使用できます。

var foo = "bar";

if ( foo in { bar:1, foobar:1, foo:1 } ) {
  alert("yes")
} else {
  alert("No")
}
于 2012-08-17T09:45:05.443 に答える
-1

あなたのコーディングは...

if(value in { abc:1, cde:1, efg:1}){
        //...
        }
于 2012-08-17T09:46:19.983 に答える