异步的学习

作者: VictoriaZsj | 来源:发表于2019-03-26 11:33 被阅读0次

1.promise

2.iterator

3.genarator

4.async

一。promise对象

***异步编程的一种解决方案,比传统的回调函数和事件更强大更合理。

***promise是一个容器,保存着未来才会结束的事件的结果。

***特点:promise对象代表一个异步操作

1)只有异步操作的结果可以决定当前是哪一种状态,其他操作无法改变

2)状态改变后就不会再变

Pending=>Fulfilled(已成功)/Rejected(已失败)  只要这两种情况发生就代表Resolved(已定型)

与事件不同的是,此时改变已经发生,再添加回调函数,也会立即得到结果。事件是。如果错过了它,再去监听得不到结果。

***promise对象可以将异步操作以同步操作的流程表达出来,避免层层嵌套的回调函数。=

***promise对象提供统一接口,使得控制异步操作更容易。

***Promise构造函数接受两个函数作为参数,分别是resolve和reject。又js引擎提供,不用自己部署。resolve作用是将promise对象的状态从Pending=>Resolved,在异步操作成功时调用,并将操作的结果作为参数value传递出去。reject是将promise对象的状态从Pending=>Rejected,在异步操作失败时调用,并将报出的错误作为参数 error传递出去。

***promise 实例生成以后,可以用then方法分别指定Resolved状态和Rejected 状态的回调函数。

promise.then(function(value){//success},

function(error){ //failure }

)

二。iterator(遍历器,本质上是一个指针对象)和for ...of

***js原有的数据结构主要是数组和对象,es6新添加了Map和Set。

遍历器是这样一种机制:统一的接口机制来处理所有不同的数据结构,任何数据结构,只要部署interator接口,就可以完成遍历操作(依次处理成员)

***三个作用

1)为各种数据结构提供统一的、简便的访问接口。

2)使数据结构成员能够按某种次序排列。

3)供for ...of消费

三。generator函数

***可以理解成一个状态机,封装了多个内部状态

还是一个遍历器对象生产函数,返回一个遍历器对象,依次遍历generator函数内部的每一个状态。

1)function*funcName()

2)内部使用yield语句定义不同的内部状态

四。async函数(generator函数的语法糖)

将generator函数的星号(*)替换成async,将yield替换成await。仅此而已。

相关文章

  • 异步的学习

    1.promise 2.iterator 3.genarator 4.async 一。promise对象 ***异...

  • NIO-异步IO

    异步I/O Github Demo 连网是学习异步 I/O 的很好基础,而异步 I/O 对于在 Java 语言中执...

  • 小程序里使用async和await变异步为同步,解决回调地狱问题

    最近好多同学,学习完石头哥的云开发基础以后,自己实际项目中,总会遇到各种各样的异步问题。 一,异步问题 所谓异步:...

  • Node 学习(二)

    Promise学习 Promise含义 容器,保存异步操作的结果对象,获取异步操作的消息 Promise对象特点 ...

  • 学习异步编程

    内容参考 执行队列 microtask 当前JS执行loop的尾部 macrotask 下个JS执行loop的首部...

  • 学习《异步授课》

    本周马老师家有丧事,我作为徒弟,当然要顶上去了,这周我都要带两个班的课,还上延时,都是溜溜一整天,本想着今晚...

  • 你真的懂异步编程吗?

    为什么要学习异步编程? 在JS 代码中,异步无处不在,Ajax通信,Node中的文件读写等等等,只有搞清楚异步编程...

  • 2018-05-24-多线程学习

    java多线程并发的编程学习 1,概念的学习 同步异步:同步需要等待异步不需要,同步如对共享数据操作避免脏数据...

  • Python 异步IO - asyncio

    python 异步IO 本文为个人学习python asyncio模块的内容,可以看为python异步编程的入门。...

  • Dart 异步编程相关概念简述--从人生三大事说起

    学习 Dart 的异步编程时,需要对异步编程所涉及的相关知识体系进行梳理,我们可根据以下几个发问来逐个了解异步编程...

网友评论

    本文标题:异步的学习

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