javascript - 如何用localstorage存储web-worker中的数值,以便下次web-worker再次使用。
迷茫
迷茫 2017-04-10 15:35:27
[JavaScript讨论组]

html:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title></title>
    <script src="index.js"></script>
</head>
<body>
    <p id="nump">0</p>
    <button id="start">点击开始</button>
    <button id="stop">点击暂停</button>
</body>
</html>

调用web-worker部分的js:

var nump;
var work = null;

window.onload = function(){
    nump = document.getElementById("nump");
    document.getElementById("start").onclick = startWorker;
    document.getElementById("stop").onclick = function(){
        if(work){
            work.terminate();
            work = null;
        }
    }
}

function startWorker(){
    if(work){
        return;
    }
    work = new Worker("count.js");
    work.onmessage = function(e){
        nump.innerHTML = e.data;
        sessionStorage.sum = e.data;
    }
}

web-worker:实现一个自加的功能。

var countNum = 0;
function count(){
    postMessage(countNum);
    countNum++;
    setTimeout(count,1000);
    localStorage.num = countNum;
}

count();

现在的问题是如何存储web-worker中的返回值countNum,以便点击暂停按钮,再点击开始按钮后,继续从上一次暂停的数值开始增加?

迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

全部回复(1)
天蓬老师

web-work是双向通讯的

 在 调用web-worker js的页面postmess最后web-work传回来的countNum 到web-work页面
进行累计之后再 postmessage回来就好了

两个js 都是能够使用 postmessage 和onmessage函数的
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号