-
-
Save zignd/8c0e95850158a88f348d07a3af468bf5 to your computer and use it in GitHub Desktop.
Revisions
-
danharper created this gist
Feb 8, 2015 .There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,10 @@ // ES7, async/await function sleep(ms = 0) { return new Promise(r => setTimeout(r, ms)); } (async () => { console.log('a'); await sleep(1000); console.log('b'); })() This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,21 @@ // ES6, native Promises, arrow functions, default arguments function sleep(ms = 0) { return new Promise(r => setTimeout(r, ms)); } console.log('a'); sleep(1000).then(() => { console.log('b'); }); // or if we were to be strictly identical, an "async" function returns a // Promise, so this is more accurate, but the fluff isn't needed for in this case (function() { return new Promise((resolve, reject) => { sleep(1000).then(() => { console.log('b'); resolve(); }); }); })(); This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,14 @@ // ES6, native Promises ONLY function sleep(ms) { ms = ms || 0; return new Promise(function(resolve) { setTimeout(resolve, ms); }); } (function() { console.log('a'); sleep(1000).then(function() { console.log('b'); }); })(); This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,12 @@ // ES5, nothing special function sleep(ms, callback) { ms = ms || 0; setTimeout(callback, ms); } (function() { console.log('a'); sleep(1000, function() { console.log('b'); }); })();