微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

js中promise的简单理解

概念:

Promise 是异步编程的一种解决方案,比传统的解决方案——回调函数和事件——更合理且更强大。它最早由社区提出并实现,ES6将其写进了语言标准,统一了用法,并原生提供了Promise对象。

解决异步地狱,本质就是一个构造函数。
异步同步化
结果: 失败或者成功

学习内容

同步代码
微观代码
宏观代码
0 ### 顺序问题


let p = new Promise((resolve, reject) => {
    fs.readFile('./text/bb.text1', (err, data) => {
        // 失败
        if (err) { reject(err) }
        resolve(data)

    })
})

p.then((data) => {
    console.log(data.toString())
}, (err) => {
    console.log(11, err)
})

p里面的是同步的话。先改变p的promise状态
p里面是异步的话 ,就先执行 then方法,改变resolve(data)改变方法后执行。


改变状态才能回调函数

在这里插入图片描述

在这里插入图片描述

1 抛出错误

在这里插入图片描述

在这里插入图片描述

2 返回值非promise 对象;

在这里插入图片描述


在这里插入图片描述

r,返回 return 的结果 成功的状态

3 返回promise对象

在这里插入图片描述

4 串联多个操作任务

在这里插入图片描述


在这里插入图片描述

等1秒钟之后,状态才为成功,成功之后执行回调函数

5:异常穿透

在这里插入图片描述


在这里插入图片描述

在这里插入图片描述


在这里插入图片描述

最好的catch捕捉就可以了

在这里插入图片描述

中端 promise 链

在这里插入图片描述

只有一个方式:返回promise 对象的状态为pending即使没有成功和失败的状态。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐