美文网首页程序员
学习ES-6Promise对象

学习ES-6Promise对象

作者: SilverBy | 来源:发表于2019-01-22 16:36 被阅读0次

首先了解一下什么是Promise:

Promise简单来说就是个替代回调函数执行的东东,作为异步操作的处理方法之一。

(回调函数是指在作为对象传入主函数,在在主函数处理完之后执行的函数)

那么为什么要用这个呢?

日常经常有那种执行完一个函数继续执行下一个函数的需求,例如最简单的每秒输出数字1.2.3....,这样会形成嵌套,就像套娃娃一样,一个大的里面有一个小的,处理起来很麻烦。

举个小栗子:

所以我们要进行处理操作,一般promise有三种状态:pending(等待态),fulfiled(成功态),rejected(失败态);

常见写法为:

let p =  new Promise(resolve, reject){}.then();

例子:

原来的写法


按照Promise的写法

Promise的构造函数接收一个参数,是函数,并且传入两个参数:resolve,reject,分别表示异步操作执行成功后的回调函数和异步操作执行失败后的回调函数.

按照标准来讲,其实resolve是将Promise的状态置为fullfiled,reject是将Promise的状态置为rejected,promise的常用用法.

注意:在then方法中的function 调用的next方法,一定要用return ,否则不会通过resolve把数据往下传递( 通俗点讲就是下一个异步操作,接收不到上一步的结果 ).

then能接受两个参数,由reject传数据给第二函数;


和then不同 catch 是用于接受错误信息的(reject)(推荐用这种)


resolve所给的值由then接受,reject的值由catch接受。

Promise.all 与 Promise.race

这两者有何不同呢,一个是在全部异步加载完之后显示全部,一个是执行完最快的那个立马显示

例如:


浏览器上显示:

race:

浏览器上显示:

相关文章

  • 学习ES-6Promise对象

    首先了解一下什么是Promise: Promise简单来说就是个替代回调函数执行的东东,作为异步操作的处理方法之一...

  • 学习对象

    学习对象最好不要是那些高手,高手往往天赋异禀,或者资源加持,而这恰恰是普通人无论如何都无法具备的,更不用说追赶了。...

  • 20-OOP类与对象

    面向对象 Object Oriented 学习面向对象:XXOO 面向对象的学习: 面向过程和面向对象的区别: 面...

  • JavaScript学习——对象

    1. 本文是在学习廖雪峰先生的JavaScrip教程 后的归纳 一、标准对象 typeofJavaScript的世...

  • JavaScript:对象学习

    JavaScript有数组,但是没有字典这种结构,对象从形式上看就是一种字典结构。并且对象的key统一为Strin...

  • 关联对象学习

    在没有介绍关联对象之前,先看一道面试题 Category能否添加成员变量?如果可以,如何给Category添加成员...

  • Proxy 对象学习

    1、Proxy 对象到底是什么? Proxy 对象到底是什么呢?Proxy 的意思是 代理,proxy对象的作用是...

  • OC对象 学习

    前言 对象是OC的基本单元,由于OC语言的特殊型,所以OC语言的对象或许会有和其他语言不一样的地方,今天来看看OC...

  • response对象学习

    * Response学习: * 作用: * 用来响应数据到浏览器的一个对象 * 使用: * ...

  • 学习TypeScript 对象

    对象是包含一组键值对的实例。 值可以是标量、函数、数组、对象等: TypeScript 类型模板 sites.sa...

网友评论

    本文标题:学习ES-6Promise对象

    本文链接:https://www.haomeiwen.com/subject/twbidqtx.html