(5).toString() がOKで 5.toString() がダメな理由を調べてみた。 まず (5) の ( ) は何なのか。これはグループ化演算子と呼ばれるもののようだ。 生成規則 PrimaryExpression : ( Expression) は、次のように評価される: Expression を評価。これは Reference 型でもよい。 Result(1) を返す。 "( Expression )" は Expression の評価の結果を返す。(function(){ alert("hoge") })(); というコードで無名関数が実行できるのは、(function(){ alert("hoge") }) が無名関数を返すから。そして (5) はただ 5 という数値を返すだけ。 では、(5).toString() と 5.toString() は何が違うのか。数値に対し