文档章节

Promise记录

iPhone
 iPhone
发布于 2015/04/04 19:21
字数 161
阅读 8
收藏 0
点赞 0
评论 0

 利用Q模块实现函数串行和并行的使用,上代码

 var Q = require("q");

function test(value) {
    var d = Q.defer();
    d.resolve(value);
    return d.promise;
}
function test1(value) {
    var d = Q.defer();
    d.reject(value);
    return d.promise;
}
并行计算汇总
Q.all([
    test(10),//执行三个函数
    test(20),
    test1(40)
])
    .spread(function (x, y, z) {//三个函数返回的三个值
        console.log(x, y, z);
        return x + y + z;
    }, function (err) {
        console.log(err);
    })
    .done(function (str) {//完成前面的后执行
        console.log(str)
    });

//串行计算
test(10)
    .then(function (data) {
        return test(data + 10);
    }, function (error) {
        var d = Q.defer();
        d.reject(error);
        return d.promise;
    })
    .then(function (data) {
        //return test(data + 10);
        var d = Q.defer();
        d.reject(data);
        return d.promise;
    }, function (error) {
        var d = Q.defer();
        d.reject(error);
        return d.promise;
    })
    .then(function (data) {
        console.log(data);
    }, function (error) {
        console.log("err:"+error);
    })

© 著作权归作者所有

共有 人打赏支持
iPhone
粉丝 0
博文 7
码字总数 2946
作品 0
海口
ES2017异步函数现已正式可用

ES2017标准已于2017年6月份正式定稿了,并广泛支持最新的特性:异步函数。如果你曾经被异步 JavaScript 的逻辑困扰,这么新函数正是为你设计的。 异步函数或多或少会让你编写一些顺序的 Java...

powertoolsteam ⋅ 2017/08/21 ⋅ 0

JavaScript Promise 学习记录(一)

JavaScript Promise 学习记录(一) 本文首先介绍了promise的三种状态及生成不同状态promise方法,然后介绍了promise的回调处理方法then,分析了不同情况下then函数返回的promise状态。最后通过...

kkdev163 ⋅ 2017/11/27 ⋅ 0

一步一步实现一个符合PromiseA+规范的Promise库(1)

今天我们来自己手写一个符合PromiseA+规范的Promise库。大家是不是很激动呢?? 我们都知道。在现在的前端开发中,Promise这个东西基本上所有的开发中都会用到。 那必然有些萌新就会问了,P...

change_117b ⋅ 03/11 ⋅ 0

mpvue学习笔记-之微信小程序数据请求封装

简介 美团出品的mpvue已经开源出来很久了,一直说要进行一次实践,这不最近一次个人小程序开发就用上了它。 看了微信官方的数据请求模块--request,对比了下get和post请求的代码,发现如果在...

愿爱无忧dk_ ⋅ 05/31 ⋅ 0

ES6 async-await函数记录

含义 async 函数是什么?一句话,它就是 Generator 函数的语法糖。 async函数对 Generator 函数的改进,体现在以下四点: 1. 内置执行器 Generator 函数的执行必须靠执行器,所以才有了co模块...

前端大白 ⋅ 05/28 ⋅ 0

JavaScript 异步

JavaScript怎么使用循环代替(异步)递归 问题描述 在开发过程中,遇到一个需求:在系统初始化时通过http获取一个第三方服务器端的列表,第三方服务器提供了一个接口,可通过分页形式获取列表。...

掘金官方 ⋅ 01/02 ⋅ 0

nodejs插件的学习笔记

async 并发连接数控制。 接口, callback是每次调用iterator第二个参数,必须调用一下,不然只会执行到limit的次数,而不是arr.length的次数,callback执行时的第2个参数就是每次iterator调用...

前端届的科比 ⋅ 2014/06/16 ⋅ 0

图解分布式一致性协议Paxos

Paxos协议/算法是分布式系统中比较重要的协议,它有多重要呢? <分布式系统的事务处理>: Google Chubby的作者Mike Burrows说过这个世界上只有一种一致性算法,那就是Paxos,其它的算法都是残...

wangdy ⋅ 2016/06/22 ⋅ 0

ECMAScript 6 promises(下):谈谈 API(二)

原文地址: http://www.2ality.com/2014/10/es6-promises-api.html 原文作者:Dr. Axel Rauschmayer 译者:倪颖峰 原博客已经标明:本博客文档已经过时,可进一步阅读“Exploring ES6”中的 ...

一配 ⋅ 2015/12/02 ⋅ 0

Promise 源码:实现一个简单的 Promise

前言 Promise 是 ES6 新增的一个内置对象, 它是用来避免回调地狱的一种解决方案。 从以前一直嵌套传回调函数,到使用 Promise 来链式异步回调。Promise 究竟是怎么实现,从而达到回调函数“...

cobish ⋅ 05/21 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

OSChina 周三乱弹 —— 这样的女人私生活太混乱了

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @ 胖达panda :你经历过体验到人生的大起大落吗?我一朋友在10秒内体验了,哈哈。@小小编辑 请点一首《almost lover》送给他。 《almost love...

小小编辑 ⋅ 49分钟前 ⋅ 7

自己动手写一个单链表

文章有不当之处,欢迎指正,如果喜欢微信阅读,你也可以关注我的微信公众号:好好学java,获取优质学习资源。 一、概述 单向链表(单链表)是链表的一种,其特点是链表的链接方向是单向的,对...

公众号_好好学java ⋅ 54分钟前 ⋅ 0

Centos7重置Mysql 8.0.1 root 密码

问题产生背景: 安装完 最新版的 mysql8.0.1后忘记了密码,向重置root密码;找了网上好多资料都不尽相同,根据自己的问题总结如下: 第一步:修改配置文件免密码登录mysql vim /etc/my.cnf 1...

豆花饭烧土豆 ⋅ 今天 ⋅ 0

熊掌号收录比例对于网站原创数据排名的影响[图]

从去年下半年开始,我在写博客了,因为我觉得业余写写博客也还是很不错的,但是从2017年下半年开始,百度已经推出了原创保护功能和熊掌号平台,为此,我也提交了不少以前的老数据,而这些历史...

原创小博客 ⋅ 今天 ⋅ 0

LVM讲解、磁盘故障小案例

LVM LVM就是动态卷管理,可以将多个硬盘和硬盘分区做成一个逻辑卷,并把这个逻辑卷作为一个整体来统一管理,动态对分区进行扩缩空间大小,安全快捷方便管理。 1.新建分区,更改类型为8e 即L...

蛋黄Yolks ⋅ 今天 ⋅ 0

Hadoop Yarn调度器的选择和使用

一、引言 Yarn在Hadoop的生态系统中担任了资源管理和任务调度的角色。在讨论其构造器之前先简单了解一下Yarn的架构。 上图是Yarn的基本架构,其中ResourceManager是整个架构的核心组件,它负...

p柯西 ⋅ 今天 ⋅ 0

uWSGI + Django @ Ubuntu

创建 Django App Project 创建后, 可以看到路径下有一个wsgi.py的问题 uWSGI运行 直接命令行运行 利用如下命令, 可直接访问 uwsgi --http :8080 --wsgi-file dj/wsgi.py 配置文件 & 运行 [u...

袁祾 ⋅ 今天 ⋅ 0

JVM堆的理解

在JVM中,我们经常提到的就是堆了,堆确实很重要,其实,除了堆之外,还有几个重要的模块,看下图: 大 多数情况下,我们并不需要关心JVM的底层,但是如果了解它的话,对于我们系统调优是非常...

不羁之后 ⋅ 昨天 ⋅ 0

推荐:并发情况下:Java HashMap 形成死循环的原因

在淘宝内网里看到同事发了贴说了一个CPU被100%的线上故障,并且这个事发生了很多次,原因是在Java语言在并发情况下使用HashMap造成Race Condition,从而导致死循环。这个事情我4、5年前也经历...

码代码的小司机 ⋅ 昨天 ⋅ 2

聊聊spring cloud gateway的RetryGatewayFilter

序 本文主要研究一下spring cloud gateway的RetryGatewayFilter GatewayAutoConfiguration spring-cloud-gateway-core-2.0.0.RC2-sources.jar!/org/springframework/cloud/gateway/config/G......

go4it ⋅ 昨天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部