我正在尝试在我的应用程序中实现网络工作人员,但由于某些原因,功能如 alert
和控制台error
未定义。
我的网络 worker 代码:
AJAX = new XMLHttpRequest();
AJAX.open("GET", 'Record/fetchEntity', true);
AJAX.send();
var result = AJAX.responseText;
console.log(result); // Errors with 'console is not defined'.
self.postMessage(result);
顺便说一下,result
是一个对象数组。这会像我所做的那样传回给主人吗?
最佳答案
Web Worker 无法直接访问浏览器或 DOM。他们可以访问列出的浏览器相关功能的特定子集 here in the MDN documentation
- atob()
- btoa()
- clearInterval()
- clearTimeout()
- 转储()
- 设置时间间隔()
- setTimeout()
- XMLHttpRequest()
- worker ()
除此之外,他们只能访问核心标准 JS 函数和一些额外的辅助功能
- 导入脚本()
- FileReaderSync()
关于javascript - 标准功能在网络 worker 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15386585/