4
我想用原型函数来扩展布尔对象,该函数将其反转为当前值。到目前为止,我一直在做这样的事情:使用'反转'功能在JavaScript中扩展布尔对象
var bool = true;
bool = !bool;
console.log(bool); // false
我试图扩展布尔对象并不富有成效。这是我得到了多少:
Boolean.prototype.invert = function() {
return !this.valueOf();
}
var bool = true;
bool = bool.invert();
console.log(bool); // false
关闭,但不够接近。我找了沿着这些路线的解决方案:
var bool = true;
bool.invert();
console.log(bool); // false
是的,我知道,扩展内置的对象通常被认为是一个坏主意。请让我们另存一天的讨论。
但是,除了你试图改变状态的事实之外,还有什么意思呢?除了试图避免简单的重新分配之外,其他的目的是什么:'bool =!bool;'? –
也许我应该改写一下这个问题:我怎样才能用原型来改变对象的状态......谢谢。 – trembl
相关:http://stackoverflow.com/questions/4066094/change-value-of-a-wrapped-primitive-data-type – CMS