SyntaxError: Unexpected token .
すべての罰金です:
({}).a
私はエラーが出るのはなぜ最初の場所に?あいまいさはありますか?
SyntaxError: Unexpected token .
すべての罰金です:
({}).a
私はエラーが出るのはなぜ最初の場所に?あいまいさはありますか?
中括弧は、オブジェクトリテラルではなくblock statementと解釈されます。左中括弧で式文を始めることはできません。
仕様状態:それはブロックと、それが曖昧になるかもしれないので
NOTEはExpressionStatementは、開口部の中括弧 で始めることはできません。また、 ExpressionStatementはFunctionDeclarationのと、それが曖昧になるかもしれない ため
function
キーワードで始めることはできません。
{}は、オブジェクトを構築するために存在します。通常、最初に新しいオブジェクトを変数に割り当てます。
var o = {
a: "b"
};
console.log(o.a);
が、これもまた可能である:
console.log({
a: "b"
}.a);
ちょうどそれを許可していませんJavaScriptシンタックス。 – Eliasdx
'{}'という式は、独自のプロパティを持たない新しいネイティブオブジェクトを評価します。 'Object.prototype'メソッドの1つにアクセスしようとしていますか? –
[オブジェクトのプロパティに即座にアクセスする]の複製が可能です(http://stackoverflow.com/questions/7518538/immediately-accessing-an-objects-property) – RightSaidFred