Javascript 可以使用Web Workers从列表中筛选HTML节点吗?

Javascript 可以使用Web Workers从列表中筛选HTML节点吗?,javascript,web-worker,Javascript,Web Worker,我正在尝试编写一个脚本,它可能需要对html标记进行大量过滤。我想我可以借此机会了解网络工作者,但这可能不是他们的正确用途 我想得到一页上的每一张图片,并按大小过滤。我知道我无法将对象传递给工作者,我认为他们无法访问DOM,所以我这样做: window.addEventListener("load", init); function init () { console.log("init"); var imgs = document.querySelectorAll("img"

我正在尝试编写一个脚本,它可能需要对html标记进行大量过滤。我想我可以借此机会了解网络工作者,但这可能不是他们的正确用途

我想得到一页上的每一张图片,并按大小过滤。我知道我无法将对象传递给工作者,我认为他们无法访问DOM,所以我这样做:

window.addEventListener("load", init);

function init () {
    console.log("init");
    var imgs = document.querySelectorAll("img");
    var worker = new Worker("worker.js");
    console.log(JSON.stringify(imgs));
    worker.postMessage(JSON.stringify(imgs));

    worker.addEventListener("message", read_message);
}
不幸的是,看起来我无法将节点列表转换为对象。。。
您认为我应该找到另一种方法吗?还是可以用其他方法发送该信息?

尝试在webworker端使用JSON.parse()解析发送的数据。Wen worker没有访问DOM的权限。我认为你不能将
NodeList
转移给网络工作者。