を書くことができ、中括弧は、ブロック文を作成するために使用されています
{
var foo = "bar";
var blah = "baz";
doSomething();
}
上記の行は問題なくuated文字列とeval
の内側に置くことができます。今、このことを考慮してください。
{
"foo": "bar",
"blah": "baz"
}
中括弧は、それがグループ式、:
文字の周りので、構文エラーだと思うためにJavaScriptエンジンを引き起こします。 MDN...JavaScript Guide...Object Literals:
ステートメントの先頭にオブジェクトリテラルを使用しないでください。 { がブロックの先頭と解釈されるため、これによりエラーが発生するか、または期待どおりに動作しません。
()
の中にオブジェクトリテラルをラップするのは、ブロックステートメントではなく、その内容を式として扱うようにエンジンに指示することで回避できます。
({
var foo = "bar";
var blah = "baz";
doSomething(evil);
})
// parse error
をしかし、これは行います:これは動作しません
({
"foo": "bar",
"blah": "baz"
})
// returns object
私はあなたが「(」と「)」英語のネイティブスピーカーではなく、見括弧です。あなたがこれを訂正すれば、他の人があなたの投稿を見つけるのに役立つかもしれません。 –