确定这是有点难以解释,但在这里不用,我使用的网络工作者,我有我的网络工作者脚本定义的功能,我想打电话给一个特定的功能在另一个函数传递作为参数,问题是我正在尝试使用worker.postMessage从我的主脚本执行此操作。如果我发布一些代码,这可能是更清晰...调用函数
这是我的主要脚本:
worker.postMessage({'cmd': 'register', 'funcName': 'someFunction'});
这是从工人脚本:
self.addEventListener('message', function(e) {
var data = e.data;
switch (data.cmd) {
case 'register':
registerEvent(data.funcName);
break;
case 'unregister':
break;
default:
self.postMessage('Unknown command: ' + data.msg);
};
}, false);
function someFunction() {
}
function registerEvent(someFunction) {
}
所以我知道这个代码是错了,不会工作,但我想你有一个想法,我想要实现。
为十分感谢,如果我有20个奇函数它会得到详细的使用单个对象,具有20种方法? – Jack
我不这么认为。它的行为更像索引字典而不是其他任何东西。而你总是可以看看使用['importScripts'(https://developer.mozilla.org/en-US/docs/Web/Guide/Performance/Using_web_workers#Importing_scripts_and_libraries)如果你担心它越来越混乱。 – kalley
我应该在服务人员还是在页面附带的js文件中写入这个函数? –