Created
October 14, 2020 16:26
-
-
Save vidhill/c10a6c4702c7197caec1975564fb0282 to your computer and use it in GitHub Desktop.
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 characters
const getDelayed = function (resolveVal) { | |
return new Promise((resolve) => | |
setTimeout(() => resolve("delayed: " + resolveVal), 2000) | |
); | |
}; | |
const func1 = function () { | |
console.log("Hello func1"); | |
return getDelayed("func1"); | |
}; | |
const func2 = async function () { | |
console.log("Hello func2"); | |
return await getDelayed("func2"); | |
}; |
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 characters
"use strict"; | |
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } | |
function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } | |
var getDelayed = function getDelayed(resolveVal) { | |
return new Promise(function (resolve) { | |
return setTimeout(function () { | |
return resolve("delayed: " + resolveVal); | |
}, 2000); | |
}); | |
}; | |
var func1 = function func1() { | |
console.log("Hello func1"); | |
return getDelayed("func1"); | |
}; | |
var func2 = /*#__PURE__*/function () { | |
var _ref = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() { | |
return regeneratorRuntime.wrap(function _callee$(_context) { | |
while (1) { | |
switch (_context.prev = _context.next) { | |
case 0: | |
console.log("Hello func2"); | |
_context.next = 3; | |
return getDelayed("func2"); | |
case 3: | |
return _context.abrupt("return", _context.sent); | |
case 4: | |
case "end": | |
return _context.stop(); | |
} | |
} | |
}, _callee); | |
})); | |
return function func2() { | |
return _ref.apply(this, arguments); | |
}; | |
}(); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment