我正在尝试关注 Douglas Crockford 的“Javascript: The Good Parts”。在第 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
有人可以为我解释这里发生了什么吗?它们都是数字类型...
谢谢。