在Lua中是否可以将参数绑定到作为参数传递给另一个函数的回调函数?(JavaScript 的"bind"等效物)



我有一个第三方API,它有一个事件侦听器添加函数,该函数将在事件发生时触发的回调函数作为参数。我想把参数传递给那个回调函数。我正在寻找Lua的等价JavaScript的bind

Lua代码:

EventListenerAddingFunction(myCallbackFunction); // I want to add a param to the callback here

我将如何在JS中做到这一点:

EventListenerAddingFunction(myCallbackFunction.bind({}, myParameter));

这能在卢阿完成吗?

没有Lua没有这个功能,所以我能想到的最接近的是制作一个闭包包装器:

EventListenerAddingFunction(function(...) myCallbackFunction({}, myParameter, ...) end)

每次调用回调时,它都会传递您的参数,接下来将传递所有其他回调参数。如果你不知道你的参数使用...(我不知道,所以我使用了varargs(,最好你传递确切数量的参数。

最新更新