gpt4 book ai didi

javascript - 将额外变量传递给回调

转载 作者:行者123 更新时间:2023-12-02 20:02:20 25 4
gpt4 key购买 nike

我有以下调用,它异步运行 cacheListener 对象中的方法:

ohttp.asyncOpenCacheEntry(url, 4, cacheListener);

回调对象/函数如下所示:

var cacheListener = {
onCacheEntryAvailable: function(arg1, arg2, arg3) {
// do something.
}
}

我想做的是向该回调添加一个额外的参数。我尝试在调用末尾附加第三个参数,然后在函数定义中附加第三个参数,但它不会像这样正确传递(最后是 myArg):

    ohttp.asyncOpenCacheEntry(url, 4, cacheListener, myArg);

这是带有额外参数的回调对象/函数的样子:

var cacheListener = {
onCacheEntryAvailable: function(arg1, arg2, arg3, myArg) {
// do something.
}
}

正如预期的那样,myArg 没有被传递,并且我不确定如何构建一个允许正确传递参数的构造。

感谢您的帮助,

最佳答案

如果您无法控制使用回调的代码,则必须将其结束。像这样的事情:

ohttp.asyncOpenCacheEntry(url, 4, cacheListener, {
onCacheEntryAvailable: function(arg1, arg2, arg3) {
cacheListener.onCacheEntryAvailable(arg1, arg2, arg3, myArg);
}
});

如果回调对象中有其他方法,那么您也必须包装它们。

关于javascript - 将额外变量传递给回调,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7830008/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com