在javascript中使用“return!0”有什么意义吗?

如果你去谷歌的结果页面,并运行rwt.toString() ,你会看到这个函数的返callback用是:

 return !0; 

我想不出任何理由,为什么这不总是true 。 这只是一个true的速记,还是有更多的在这里呢?

它总是如此,但下载( !0是2个字符)需要2个字节,而不是4个字节来下载布尔值true

大多数Javascript minifiers将true转换为!0和假转换为!1 。 你可以通过inputvar y = true;来看到这个例子var y = true; 在Google的Closure编译器上进行简单的优化: http : //closure-compiler.appspot.com/home