2012-01-13 8 views

答えて

9

号ない

  • "Strings."
  • /regular.expressions/
  • 1.2 // Numbers
  • // Comments.
+0

+1を意味します: – 6502

+0

+1の正規表現のために忘れてしまったこと、それ以外はすべて –

+0

@Quentin:ドットはプロパティ(メソッド名)の一部でもかまいません。オブジェクト。例: 'var obj = {"。 ":14}; obj ["。ss。 "] = 15; alert(obj ["。 "] * obj [" ss。 "]);' 210が表示されます。そして、 'obj.hasOwnProperty("。 ")' trueが返されます。 –

5

それは数値リテラルでオペレータ

var x = 12.5; 
+2

これは私に20kを超える答えです..... –

+1

一種の落ち込み、発行? ;) – deceze

+0

私は今削除するためにいくつかの質問を見つける必要があります!!!!! –

5

メンバーアクセス.を演算子として説明するのは一般的ですが、これはJava、Javascript、CまたはC++のような言語では多少間違っていると思います。

他のバイナリ演算子は左側に式を持ち、右側に式を持ちますが、メンバアクセス演算子は右側の式ではなく、フィールド識別子、つまり非常に特殊な構文形式を許可しています。他の二項演算子のために例えば

二つの形式の一つだけが構文的に有効であるので、これはメンバーのアクセスについてナンセンスな質問ですしながら、それは((すなわちa op b op ca op (b op c)(a op b) op cの場合)、左または右の結合性について話すことは理にかなっていますa.(b)と書くこともできません)。優先順位も同じです。

連想性や優先度の問題ではなく、式の文字の単なる言葉で言えば(つまり、式のドット文字がメンバーのアクセスを示していない場合)、明らかに浮動小数点の役割を果たしている点数、文字列リテラルのドット文字(1ドット文字の役割)、正規表現のドット文字(ここでは、 「エスケープされているかどうかに応じて、任意の文字」に変換されます)。

また、Quentinが私に思い出したように、人間の解釈に意味が残っているコメントにはドットを付けることができます。

+1

[MDNはオペレータを呼び出します](https://developer.mozilla。 org/ja/JavaScript/Reference/Operators/Member_Operators) – Quentin

+0

ECMAはこの点で正確であり、ドット "演算子"を呼びません。これは標準の "ドット表記法"です。 – georg

+0

ドット演算子はFYI関連のままになります。 –

1

数値(文字列や正規表現など)のほかに、のドットの句読点が必ずしも機能しないことがあります。

var obj = { 
    'prop1' : null, 
    'prop-2' : null 
}; 
obj.prop1;//it works 
obj.prop-2;// it doesn't work. you should access with via the brackets operator : obj['prop-2']; 

私のポイントは、ドットは必ずしも有効ではないとした例があるということでした:だから、あなたがアクセスしようとしているプロパティは、特殊文字を持っているような場合に、.は有効な演算子ではありません演算子(あなたがそうであると思っているときでも)。

+1

これは有効な演算子であり、有効な識別子ではない 'prop-2'です。 – Quentin

関連する問題