es6 - promise的基本用法

栏目: JavaScript · 发布时间: 7年前

内容简介:参考:和Promise, then 是一种句式, 用来做一些比较耗时的异步操作。例如:

参考: http://es6.ruanyifeng.com/#docs/promise

https://segmentfault.com/a/1190000007535316

Promise, then 是一种句式, 用来做一些比较耗时的异步操作。例如:

new Promise(发送http请求 ).then( 处理返回的response).fail(如果失败了该怎么操作)

我们先看一个例子, promise 是如何被声名和调用的。

安装好node 之后, node 会自动支持es6 的语法。我们直接创建一个 test.js 文件,然后直接 node test.js 即可

my_promise = new Promise(function(resolve, reject){
  console.info("== in promise")
  // 如果该promise 操作成功的话,
  let result = true   //假设成功
  if(result ){
    // 运行成功对应的代码
    resolve()
  }else{
    // 运行失败对应的代码
    reject()
  }
  console.info("== in the last line of promise")
})

my_promise.then(function(){
  console.info("== hi , I am resolve function")
})

运行结果: (可以看出, promise 的 then函数被最后执行的)

$ node test_promise.js
== in promise
== in the last line of promise
== hi , I am resolve function

promise的好处非常多。可以让代码非常简洁。

上面的代码,在es6 中也可以:

1. 把function() {}  写成 => {} 的形式

2. 只保留 promise(function(resolve)), 而不用 promise(function(resolve, error)) 这个形式。(算是省略了对错误的处理)

省略后的样子是这样的:

my_promise = new Promise((resolve) => {
   //...
})

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

算法之美

算法之美

左飞 / 电子工业出版社 / 2016-3 / 79.00元

《算法之美——隐匿在数据结构背后的原理(C++版)》围绕算法与数据结构这个话题,循序渐进、深入浅出地介绍了现代计算机技术中常用的40 余个经典算法,以及回溯法、分治法、贪婪法和动态规划等算法设计思想。在此过程中,《算法之美——隐匿在数据结构背后的原理(C++版)》也系统地讲解了链表(包括单向链表、单向循环链表和双向循环链表)、栈、队列(包括普通队列和优先级队列)、树(包括二叉树、哈夫曼树、堆、红黑......一起来看看 《算法之美》 这本书的介绍吧!

随机密码生成器
随机密码生成器

多种字符组合密码

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试