V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐关注
Meteor
JSLint - a JavaScript code quality tool
jsFiddle
D3.js
WebStorm
推荐书目
JavaScript 权威指南第 5 版
Closure: The Definitive Guide
Just1n
V2EX  ›  JavaScript

Array.every()是阻塞的吗?

  •  
  •   Just1n · 2014-11-06 09:37:29 +08:00 · 2883 次点击
    这是一个创建于 3457 天前的主题,其中的信息可能已经有所发展或是发生改变。
    11 条回复    2014-11-06 13:46:56 +08:00
    Arrowing
        1
    Arrowing  
       2014-11-06 09:41:14 +08:00
    同步的,不阻塞,个人理解。

    alert这个才是阻塞的吧
    skydiver
        2
    skydiver  
       2014-11-06 09:42:29 +08:00 via Android
    同步的……阻塞是说的IO,没IO哪来阻塞
    meteor
        3
    meteor  
       2014-11-06 10:03:39 +08:00
    Just1n
        4
    Just1n  
    OP
       2014-11-06 10:09:54 +08:00
    @Arrowing @skydiver @meteor 对的,口误,就是想表达同步不同步的意思。
    yyfearth
        5
    yyfearth  
       2014-11-06 10:37:39 +08:00
    当然是同步的了 JS下面还没有parallel循环的支持
    JS本身单线程 所以没有IO的部分都是同步执行的 就算用了setTimeout也是执行完了一个才可能开始下一个
    yyfearth
        6
    yyfearth  
       2014-11-06 10:38:19 +08:00
    如果想做到异步而且是并行循环 那么得用worker来实现了
    cxe2v
        7
    cxe2v  
       2014-11-06 11:38:30 +08:00
    @Arrowing alert好像不是阻塞的,会直接把后面的执行完
    Jaylee
        8
    Jaylee  
       2014-11-06 11:44:10 +08:00
    @cxe2v alert是阻塞的
    cxe2v
        9
    cxe2v  
       2014-11-06 11:59:20 +08:00
    @Jaylee 我也没测试过,就是感觉,那是我错了
    alsotang
        10
    alsotang  
       2014-11-06 12:12:59 +08:00
    Arrowing
        11
    Arrowing  
       2014-11-06 13:46:56 +08:00   ❤️ 1
    @cxe2v 我就这个问题做了测试,将以下代码放置html文件跑起来便知

    <div id="test" style="width: 50px;height: 50px;background:#000;position: absolute;left: 0; top: 0;">

    </div>
    <script>
    var test = document.getElementById('test');
    setInterval(function(){
    test.style.left = (parseInt(test.style.left) + 1) + 'px';
    test.style.top = (parseInt(test.style.top) + 1) + 'px';
    }, 10);

    setTimeout(function(){
    alert('stop');
    }, 1000);
    </script>
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3752 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 38ms · UTC 00:53 · PVG 08:53 · LAX 17:53 · JFK 20:53
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.