JavaScript的真实用例是什么;什么是空操作符?
为什么会有人写:JavaScript的真实用例是什么;什么是空操作符?,javascript,void,Javascript,Void,为什么会有人写: function () { if (err) { return void console.log(err) } } 而不是: function () { if (err) { console.log(err) return } } 有人使用过void操作符吗?我已经看到它在上面的例子中被使用,但非常罕见 更新 console.log可能是一个糟糕的例子,因为它本身返回void。让我展示一下我在e
function () {
if (err) {
return void console.log(err)
}
}
而不是:
function () {
if (err) {
console.log(err)
return
}
}
有人使用过void
操作符吗?我已经看到它在上面的例子中被使用,但非常罕见
更新
console.log
可能是一个糟糕的例子,因为它本身返回void
。让我展示一下我在express
应用程序中看到的另一个用法:
function (req, res) {
...
// Some error occurred
if (err) {
return void res.send(foo)
// `send` returns a `Response` instance
}
}
例如,在eslint
的源代码中,它被大量使用:
上述两个函数的作用相同,只是前者写在一行中。void最常用于超链接的内容,在超链接中,浏览器可以解释返回的结果并尝试显示结果 在更新的代码中,void很重要,因为函数的作者希望在一行中执行以下操作
窗口。未定义的
不可写,但可以作为有效的变量名隐藏。好吧,我不会说这是一个真实的场景,而是一种返回未定义的的简单方法
定义时的函数(){
变量未定义='已定义';
返回未定义;
}
console.log(whendefine());
函数neverdefined(){
变量未定义='已定义';
返回void 0;
}
log(neverdefined())代码>可能重复/相关@Tushar该示例在
标记中解释了用例,我知道。我对脚本本身的使用更感好奇。@JaromandaX我用我在npm
模块上看到的一个真实示例进行了更新console.log
是一个糟糕的例子。是的,我看到了-我能看到的唯一原因是将代码减少1行@JaromandaX我发现我看到的回购在中使用void
,eslint
就是其中之一。看看我更新的问题,它有很多使用操作符的eslint
示例。也许它会帮助你们扩展你们的答案?我可能只考虑文件大小,请参阅更新的答案。