注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
関数とは Function を new したものというイメージがありますが。厳密にはオブジェクトに [[Call]]とい... 関数とは Function を new したものというイメージがありますが。厳密にはオブジェクトに [[Call]]という内部プロパティが、ある→「関数」、ない→「関数じゃない」、ということになっています。関数がオブジェクトかどうかはプロトタイプやコンストラクタとは無関係です。 つまり typeof は内部プロパティ Call を参照することによって関数か関数でないかを判断しているということなんです。 例えば (IE では動かないです。) var f = new Function('alert("Hello!")'); f.__proto__ = Object.prototype; alert(typeof f); f(); このように、プロトタイプを差し替えても f は function なのです。 RegExp も実は関数 最近知ったのですが。Firefox では、 RegExp も関
2007/09/07 リンク