Promise--介绍
Posted Z && Y
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Promise--介绍相关的知识,希望对你有一定的参考价值。
1. Promise的介绍
1.1 什么是Promise
抽象表达:
- Promise是一门新的技术(ES6引入)
- Promise是JS中进行异步编程的新解决方案
- 备注: 旧方案是单纯使用回调函数
具体表达:
- 从语法上面来说:Promise是一个构造函数
- 从功能上面说: Promise对象是用来封装一个异步操作并可以获取其成功/失败的结果值。
1.2 什么是同步和异步
- 同步是阻塞模式,异步是非阻塞模式。
- 同步就是指一个进程在执行某个请求的时候,若该请求需要一段时间才能返回信息,那么这个进程将会—直等待下去,知道收到返回信息才继续执行下去;
- 异步是指进程不需要一直等下去,而是继续执行下面的操作,不管其他进程的状态。当有消息返回式系统会通知进程进行处理,这样可以提高执行的效率。
1.3 常见的异步操作
- fs文件操作(fs是Node.js下面对文件进行操作的一个模块)
- 数据库操作
- Ajax
- 定时器
1.4 为什么要使用Promise
指的回调函数的方式更加灵活
- 旧的:必须在启动异步任务前指定
- promise:启动异步任务 => 返回promise对象 => 给promise对象绑定回调函数。
支持链式调用,可以解决回调地狱问题
- 回调地狱:回调函数嵌套调用,外部回调函数异步执行的结果是嵌套的回调执行的条件
典型的回调地狱的情形:一个回调函数里面套着另外一个异步任务,无限套娃。
回调地狱的缺点
- 不便于阅读
- 不便于异常处理
回调地狱的解决方法
Promise链式调用
以上是关于Promise--介绍的主要内容,如果未能解决你的问题,请参考以下文章