Skip to content

Instantly share code, notes, and snippets.

Created August 11, 2015 08:39
Show Gist options
  • Save anonymous/af0e21529ea84c9f4d89 to your computer and use it in GitHub Desktop.
Save anonymous/af0e21529ea84c9f4d89 to your computer and use it in GitHub Desktop.

Revisions

  1. @invalid-email-address Anonymous created this gist Aug 11, 2015.
    48 changes: 48 additions & 0 deletions index.html
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,48 @@
    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="utf-8">
    <title>Promise race excute</title>
    </head>
    <body>

    <script id="jsbin-javascript">
    // `delay`毫秒后执行resolve
    function timerPromisefy(delay) {
    return new Promise(function (resolve) {
    setTimeout(function () {
    resolve(delay);
    }, delay);
    });
    }
    // 任何一个promise变为resolve或reject 的话程序就停止运行
    Promise.race([
    timerPromisefy(1),
    timerPromisefy(32),
    timerPromisefy(64),
    timerPromisefy(128)
    ]).then(function (value) {
    console.log(value); // => 1
    });
    </script>



    <script id="jsbin-source-javascript" type="text/javascript">// `delay`毫秒后执行resolve
    function timerPromisefy(delay) {
    return new Promise(function (resolve) {
    setTimeout(function () {
    resolve(delay);
    }, delay);
    });
    }
    // 任何一个promise变为resolve或reject 的话程序就停止运行
    Promise.race([
    timerPromisefy(1),
    timerPromisefy(32),
    timerPromisefy(64),
    timerPromisefy(128)
    ]).then(function (value) {
    console.log(value); // => 1
    });</script></body>
    </html>
    17 changes: 17 additions & 0 deletions jsbin.baxefi.js
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,17 @@
    // `delay`毫秒后执行resolve
    function timerPromisefy(delay) {
    return new Promise(function (resolve) {
    setTimeout(function () {
    resolve(delay);
    }, delay);
    });
    }
    // 任何一个promise变为resolve或reject 的话程序就停止运行
    Promise.race([
    timerPromisefy(1),
    timerPromisefy(32),
    timerPromisefy(64),
    timerPromisefy(128)
    ]).then(function (value) {
    console.log(value); // => 1
    });