javascript - 为什么这个 JavaScript ES6 示例中“等待”之后的代码没有运行?
问题描述
我有以下片段:
let zxcv = () => new Promise((resolve, reject) => {
setTimeout(() => {
console.log(4)
}, 1000)
})
async function jk(){
await zxcv()
console.log(6)
}
jk()
当我运行这个片段时,它会等待一秒钟,然后记录“4”,然后结束。“6”永远不会被记录。
为什么?
解决方案
你从来没有解决你的承诺zxcv
:
let zxcv = () => new Promise((resolve, reject) => {
setTimeout(() => {
console.log(4)
resolve()
}, 1000)
})
否则承诺将无限期挂起!
推荐阅读
- sql - 如何从 SQL Server 分组的一列中找到最小值
- javascript - 正则表达式 | 限制可能的用户名
- mongodb - 如何根据条件查询mongdb中同一集合中存在的多个文档?
- c# - C# 套接字忽略了我的 SendTimeout 值
- python-3.x - 如何在 OpenCV 中获取 VideoCapture 对象的 4 字符编解码器代码?
- postgresql - TimescaleDb:有人能解释一下 Hypertables 的概念吗?
- python - 替换特定的 XML 属性值
- vue.js - 如何在组件之外使用 Vuesax $vs.loading
- javascript - 尝试从 JavaScript 在 HTML 页面上显示段落
- angular - 如何在 Angular 中正确测试解析器服务的返回