什么是 "void 0"?

4
我正在通过阅读一些代码来学习Javascript,但这个函数真的让我感到困惑。
    hv:
        function(i) {
            var _this = this;
            return isArr(_this) ? _this.indexOf(i) > -1 : _this[i] !== void 0;
        }

这个函数被添加到 Object.prototype 中。
我不太理解三元表达式末尾的 void 0。有人能解释一下吗?
谢谢。

这段代码来自哪里? - kojiro
在这里查看答案 void 0 stackoverflorw - alexmac
已经有答案了:https://dev59.com/_HM_5IYBdhLWcg3wp0wX - André Kugland
@kojiro https://github.com/foray1010/Popup-my-Bookmarks/blob/master/js/common.js - octref
2个回答

6

已经有一个链接回答了这个问题。 - alexmac
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/void - suhailvs
这是一个重复的问题。 - alexmac
没什么想法,我只是看到这是一个重复的问题。我从来没有用过它,为什么要使用那样的代码,让程序员感到困惑呢 :) - alexmac
@suhail MDN说可以使用undefined - octref
显示剩余3条评论

2

void 0是一种无论如何都可以获取到undefined的方法。有些浏览器允许覆盖undefined变量,但你不能覆盖void


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接