【发布时间】:2017-07-19 20:42:44
【问题描述】:
编辑:这不是如何在 setTimeout 中传递参数的重复。实际上,我想知道如何编写一个函数,作为预定义函数的方法调用,就像 setTimeout API 一样。
那么,我怎样才能为函数'callAfter'编写一个实现,使任何函数能够在具有某些参数的指定持续时间后被调用,语法如下:
示例:假设您有一个名为“sum”的函数,如下所示:
function sum(a, b) {
console.log('Sum is: ', a + b);
}
现在您应该能够执行: sum.callAfter(5000, 8, 9);
它应该在 5 秒后使用参数 8 和 9 调用函数“sum”。
【问题讨论】:
-
听起来像是面试/家庭作业问题。到目前为止,您尝试过什么?
-
@lxe 最后,得到了一个使用函数原型的解决方案。
-
Function 的重写原型很简洁,但被一些人认为是一种反模式。
标签: javascript chaining