- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
运行下面的示例,您将看到setTimeout回调总是晚于Promise回调执行。是否有任何机制导致这个结果?或者这不是真的?
setTimeout(function() {
console.log(1)
}, 0)
new Promise(function (resolve, reject) {
resolve(2)
}).then(console.log)
setTimeout(function() {
console.log(3)
}, 0)
new Promise(function (resolve, reject) {
resolve(4)
}).then(console.log)
console.log('rush...')
最佳答案
原生 Promise 被安排为微任务。当当前执行堆栈完成时,首先运行微任务,然后运行常规任务。
有关事件循环的更多信息,包括有关微任务的信息,我推荐此演示文稿:https://www.youtube.com/watch?v=cCOL7MC4Pl0 。关于微任务的部分从第 24 分钟开始。
关于javascript - setTimeout 晚于 Promise,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52012872/
我正在使用ScheduledExecutorService使用 scheduleAtFixedRate 方法每小时提供一次数据库更新。问题是它逐渐变得更晚 - 在长期服务中我一直在记录它并且每天大约一
我有一个连接到 UILabel 的 UIDatePicker。我希望用户选择 18 年前的生日(年龄限制)。所以我用这一行来设置 maximumDate 值: datePicker.maximumDa
当我重新启动设备时,我收到 BOOT_COMPLETED广播比其他应用程序慢得多(大约 10-15 秒后)。 我看过this .但我不认为这是完全正确的。我如何(我认为)证明它是错误的: (让我们将
我有一个从 DatePickerDialog 的 onDateSetListener 调用的 TimePickerDialog,以便允许用户依次选择日期和时间。我将信息存储在日历对象 calendar
我需要查找客户是否在上一年和下一年进行了订阅,以及下一年有多少订阅是新的或被取消的。 示例数据: 身份证订阅年份120101201112019220112201232010 考虑这种方法:在订阅年份中
我必须编写一个 JavaScript 函数来检查两个日期(格式为 dd/MM/yyyy)的时间间隔是否最多为 3 个月。 我可以从两个文本框中检索两个值(无需检查格式,我已经获得了一个可以自动正确设置
我有一个输入框,类型为“时间”。我想将迟到时间 (23:00pm) 作为最小值,将早期时间 (6:00am) 作为最大值 - 创建一个 23pm - 6am 的范围。 (即中午 11 点、中午 12
我是一名优秀的程序员,十分优秀!