可能重复:
What does “javascript:void(0)” mean?
What doesvoid 0
mean?
在文件http://underscorejs.org/underscore.js中,您可以看到这样的代码块:
// Is a given variable undefined?
_.isUndefined = function(obj) {
return obj === void 0;
};
我不理解void 0
部分,这很奇怪。如何理解?
答案 0 :(得分:11)
这是控制台输出
>typeof void 0
"undefined"
>void 0 === undefined
true
>"undefined".length
9
>"void 0".length
6
我认为他们正在尝试保存3个字节的文件大小;)
编辑:
这个SO答案更有意义使用void 0
,因为undefined
只是window
对象的属性,并且是可变的。因此,void 0
是一种在浏览器中生成未定义的可信方式
答案 1 :(得分:7)
在javascript(自1.1起)中,void
运算符用于计算表达式并返回undefined
。
请参阅ECMAScript Language Specification of the void operator
所以void 0
是生成undefined
的正确标准方式。
由于它是操作员,因此不需要括号。