js高级——Promise概念

一、Promise是什么?

Promise是ES6规范的新技术,是js中进行异步编程的新的解决方案,在此之前,异步编程主要是通过回调函数来实现。具体可以从两个部分上看:

💕语法上:是一个构造函数

💕功能上:是用来封装一个一步操作并可以获取它成功/失败的结果值

❗️补充:js编程中哪些属于异步操作?

常见的定时器,AJAX,mySQL数据库操作,以及fs文件操作(node.js:require(‘fs’).readFile('./index.html'),(err,data)=>{ })。

二、为什么要用Promise?

1、指定的回调函数方式更加灵活

在没有Promise之前指定回调函数必须在启动异步任务前进行指定;Promise实现:启动异步任务=>返回Promise对象=>给Promise对象绑定回调函数(甚至可以在异步任务结束后指定多个),大大的增加了我们指定回调函数的灵活性。

2、支持链式调用,可以解决回调地狱问题

    📍2·1什么是回调地狱?

            回调函数嵌套调用,外部回调函数异步执行的结果是嵌套的回调执行的条件

(类似于俄罗斯套娃,函数套函数)

       📍2·2回调地狱缺点

                不利于阅读、不便于异常处理

        📍2·3解决方案

                Promise链式调用


三、面试中问到Promise概念可以简单这么概述下

首先Promise是ES6中新引出的异步解决方案,从语法上来说他是一个构造函数,可以实例化对象,封装异步操作,获取成功/失败的结果,优点是支持链式调用,可以解决回调地狱问题,这些是一定要答出来的。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容