javascript await学习

await 强制后面点代码等待,直到Promise对象resolve,得到resolve的值作为await表达式的运算结果

bash 复制代码
let sArr = ['没有数据'];
function timeout(ms) {
    return new Promise((resolve, reject) => {
      console.log('我已经调用了');  
      setTimeout(() => {//模拟耗时的操作,比如从数据库取数据,取出来后才能用
        //console.log('我需要等待');
        this.sArr =['我获取到数据了'];
        //reject('error');
        resolve(this.sArr);
 }, 5000);  //reject模拟出错,返回error
    //resolve('success');
    });
  }
  async function asyncPrint() {
    try {
       console.log('start');
       await timeout();  //可以去掉await 试试看输出结果
       //console.log(abc);
       //console.log('end');
       console.log(this.sArr);
    } catch(err) {
       console.log(err); //这里捕捉错误error
    }
  }

asyncPrint();
console.log('我继续执行,不受影响');

JS中console的几种方法
10 个关于 Promise 和 setTimeout 知识的面试题,通过图解一次说透彻
js异步编程 setTimeout、Promise、Async/Await 的区别

相关推荐
子兮曰11 分钟前
DeepSeek TUI:原生 Rust 打造的终端 AI 编码 Agent
前端·javascript·后端
暗不需求20 分钟前
# 深入 React Todos:从零实现一个状态提升与本地持久化的待办应用
javascript·react.js·全栈
子兮曰27 分钟前
深入 Superpowers:180k Stars 的开源 AI 编程方法论是如何工作的
前端·javascript·后端
隔壁的大叔1 小时前
Markdown 渲染如何穿插自定义组件
前端·javascript·vue.js
薯老板1 小时前
JavaScript原型,原型链
javascript
愚者Pro2 小时前
Flutter基础学习
前端·javascript·vue.js
时光足迹2 小时前
Tiptap 简单编辑器模版
前端·javascript·react.js
吴声子夜歌2 小时前
Vue3——使用Mock.js
javascript·vue·mock.js
时光足迹2 小时前
ThreeJS之GUI控制器
前端·javascript·three.js
时光足迹2 小时前
Tiptap编辑器
前端·javascript·react.js