2011年 04月 22日



 -

3.0 / 5.0

この空気清浄機を買った。前々から空気清浄機を買いたいとなんとなく思ってはいたものの、置く場所ないのと、効果あるのか疑問だったので購入を思い止まっていたのですが、花粉症がやばい感じになってきて喉の調子までイカれはじめたのでついに購入した。この機種はだいぶデカいので、箱あけたときやっちまった感を少々味わいましたが、置いてみるとそんなに気になるほどのデカさではないので、良かったです。前、A3ノビまで印刷できるプリンタ (PIXUS Pro9000 Mark II) を買ったときは、だいぶデカいのでやっちまった感ありましたが、それよりは全然大丈夫です。

実際効果のほどはどうかというと、まだいまいち解らない気もしますが、鼻水が劇的に改善したので、たぶん効果あるんだと思います (もともと春の花粉症はないはずなのにひどかった)。

JS の Function#toString の表現

そういやなんとなく不思議だと思っていたことがあって、 native コードを持つ Function オブジェクトの toString() メソッドを呼んだ結果の表現は、例えば Chrome だと

"".toString.toString() //=> "function toString() { [native code] }"

になるけど、ECMAScript 3rd Edition だと

An implementation-dependent representation of the function is returned. This representation has the syntax of a FunctionDeclaration.

http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-262.pdf

とか書いてあって、実装依存とはいえ、FunctionDeclaration の形式にはなっているようにと読める。けど native コードの場合、雰囲気的に FunctionDeclaration っぽい感じではあっても、"[native code]" の部分は Statement として正しくないので、全体として FunctionDeclaration にはなってない (仕様として正しいの?)。

というかそもそも native コードを持つ Function オブジェクトの toString() メソッドを呼んだ結果の表現について仕様で明言されているのかを知りたかったんだけど、どっかに書いてあるのかな