Ale*_*lls 33 javascript node.js
在JS中,有一个空对象的简写{}
.function
JS中有空的简写吗?
原因是,由于函数是第一类对象,我们更频繁地将它们用作参数,但传入空函数最多是丑陋的.
var foo = baz(function(){});
Run Code Online (Sandbox Code Playgroud)
为了声明一个函数,在某些时候我们必须声明function(){}
.
我希望更多Node.js API要求传递(回调)函数,因此API不会欺骗性地看起来是同步的.也许朝这个方向迈出的一步就是为空占位符函数创建速记.
Ber*_*rgi 41
不,那里没有.使用ES6,您可以使用箭头功能:()=>{}
它有点短.
如果你经常需要这个(你不应该这样做?!),你可以自己申报一个:
function noop(){}
Run Code Online (Sandbox Code Playgroud)
然后反复参考.如果你不想让你的范围变得混乱,你也可以使用Function.prototype
除了不断返回之外什么都不做的功能(原文如此!),但这undefined
实际上比你的函数表达式更长.
ES6可能是
const noop = () => {};
Run Code Online (Sandbox Code Playgroud)
如果使用Babel,请小心,因为它无法正确地进行转换,请改用它。
const noop = () => ({});
Run Code Online (Sandbox Code Playgroud)
看到有关花括号为何如此重要的推文https://twitter.com/_ericelliott/status/601420050327711744?lang=en