这是_.delay
的代码:
// Delays a function for the given number of milliseconds, and then calls
// it with the arguments supplied.
_.delay = function(func, wait) {
var args = slice.call(arguments, 2);
return setTimeout(function() {
return func.apply(null, args);
}, wait);
};
return
之前的第一个setTimeout
语句绝对有用,因为它返回可用于取消计时器的timeoutID
。毫无疑问。
但是,由于return
是异步的,因此我看不到函数传递到setTimeout
的{{1}}语句如何产生任何影响。内在的setTimeout
陈述是无关的吗?
为了访问该异步结果,需要注册一个promise或类似的构造。
return
是一个精心打磨的库,试图限制其字节数;所以,出现这样一个无关紧要的陈述似乎很奇怪。