Douglas Crockfordの「Javascript:TheGoodParts」をフォローしようとしています。第4章では、彼は私が驚異的だと思う拡張タイプについて話します。ただし、彼のサンプルコードを機能させることはできません。Numberインスタンスに整数メソッドを追加する方法は次のとおりです。
Function.prototype.method = function (name, func) {
this.prototype[name] = func;
return this;
};
Number.method('integer', function ( ) {
return Math[this < 0 ? 'ceiling' : 'floor'](this);
});
ここまでは順調ですね。しかし、これが彼が拡張メソッド整数を使用する方法であり、それは機能しません(少なくともjsFiddleでは機能しません):
document.writeln((-10 / 3).integer( )); // -3
しかし、これは機能します:
document.writeln((-3.3).integer( )); // -3
ここで何が起こったのか誰かが私に説明してもらえますか?どちらもタイプ番号です...
ありがとう。