| | |
| | | var $ = require('../internals/export'); |
| | | var global = require('../internals/global'); |
| | | var microtask = require('../internals/microtask'); |
| | | var aCallable = require('../internals/a-callable'); |
| | | var validateArgumentsLength = require('../internals/validate-arguments-length'); |
| | | var IS_NODE = require('../internals/engine-is-node'); |
| | | |
| | | var process = global.process; |
| | |
| | | // https://html.spec.whatwg.org/multipage/timers-and-user-prompts.html#dom-queuemicrotask |
| | | $({ global: true, enumerable: true, noTargetGet: true }, { |
| | | queueMicrotask: function queueMicrotask(fn) { |
| | | validateArgumentsLength(arguments.length, 1); |
| | | aCallable(fn); |
| | | var domain = IS_NODE && process.domain; |
| | | microtask(domain ? domain.bind(fn) : fn); |
| | | } |