JavaScriptでN進数変換しようとしたら、不思議な振る舞いに出会った

追記

[0-9]\.[0-9]*

だと、少数点として扱われて

[0-9]\s+\.

だと、ドット演算子として扱われるからか


SyntaxErrorのところは、数字もしくは空白文字が来るべき箇所に、その他の文字が来たからエラー吐いてるのね。


あと

7['toString'](2)

これもあったな。

なにこれ

7.toString(2)   // SyntaxError
7 .toString(2)  // 111
7  .toString(2) // 111
7. toString(2)  // SyntaxError
7 . toString(2) // 111

var n = 7;
n.toString(2)   // 111

new Number(7).toSring(2) // 111
Number(7).toSring(2)     // 111

7..toString(2)  // 111
7 ..toString(2) // SyntaxError
7. .toString(2) // 111
7.. toString(2) // 111
7.0.toString(2) // 111