`
xieye
  • 浏览: 828988 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

node的promise链式调用

 
阅读更多
var bPromise = new Promise(function (resolve) {
    console.log('start');
    resolve(100);
});
bPromise.then(function (value) {
    return value * 2;
}).then(function (value) {
    return value * 2;
}).then(function (value) {
    console.log("2: " + value); // => 100 * 2 * 2
});


输出如下:
start
2: 400

上述代码看上去,promise里的函数只执行了一次(只有一个start输出),哪怕有多个then。
确实如此,原因是:
每个执行then的promise对象是一个新对象!由上个then返回了一个新的对象。
分享到:
评论

相关推荐

    前端开源库-node-promise.zip

    Promise 链式调用是通过 `.then` 和 `.catch` 方法实现的,`.then` 用于处理 fulfilled 状态,`.catch` 处理 rejected 状态。这种链式调用可以保持代码的整洁和可读性,同时确保异步操作按照顺序执行: ```...

    前端开源库-node-promise

    1. **链式调用**:Promise的精髓之一是链式调用,允许开发者将多个异步操作串联起来,每个操作都依赖于前一个操作的结果。 2. **错误捕获**:通过`.catch()`方法,可以方便地捕获和处理在Promise链中抛出的错误。 ...

    Node.js-axios基于Promise的HTTP客户端用于浏览器和node.js

    axios利用Promise处理HTTP请求的响应,使得开发者可以通过链式调用来组织代码,提高了代码的可读性和可维护性。例如,你可以这样发送一个GET请求: ```javascript axios.get('https://api.example.com') .then...

    node-promise-util-mysql

    这个库旨在解决传统回调函数模式在处理多个数据库查询时可能出现的回调地狱问题,通过Promise链式调用的方式来改善代码的可读性和可维护性。 在JavaScript中,Promise是一种处理异步操作的方法,它代表了一个将来...

    Node.js最新技术栈之Promise篇1

    在Node.js中,Promise的链式调用让代码看起来更加简洁。例如: ```javascript let promise = someAsyncOperation(); promise .then(result => handleResult(result)) .catch(error => handleError(error)); ``` ...

    promise.pdf

    其二,Promise支持链式调用,可以将多个Promise对象串连起来,形成一条链,解决所谓的“回调地狱”问题。回调地狱是指因异步操作嵌套导致代码难以理解和维护。 在Promise的基本语法中,我们通过new Promise()来实例...

    javascript(es6) promise 迷你书

    Promise支持链式调用,即`.then()`和`.catch()`方法。`.then()`方法返回一个新的Promise对象,因此可以将多个`.then()`串联起来,形成一个Promise链。`.catch()`是`.then(null, rejectionHandler)`的别名,专门用来...

    前端开源库-callback-and-promise

    Promise代表一个异步操作的最终完成或失败,并且提供了链式调用的方式来组织异步代码,使其更易读、更易于理解。Promise有三种状态:pending(等待中)、fulfilled(已成功)和rejected(已失败)。 创建一个...

    node.js Promise对象的使用方法实例分析

    本文实例讲述了node.js Promise对象的使用方法。分享给大家供大家参考,具体如下: Promise对象是干嘛用的? 将异步操作以同步操作的...二、链式调用-then方法 使用then方法调用,第一个参数是成功回调,第二个参数是失

    2018promise最新详解.pdf

    - **Promise.prototype.done**: 用于执行完成后的回调,不返回任何值,通常用在链式调用的最后,以避免产生未处理的拒绝错误。 ### Promise的使用场景和注意事项 - **异步操作**: Promise最初设计用于处理异步操作...

    Node.js-Karin-基于promise的HTTP客户端支持浏览器和node.js

    Promise允许我们以链式调用的方式处理异步操作,使得代码结构更加简洁和易于理解。在Karin中,发起HTTP请求变得非常直观,例如,你可以像下面这样发送一个GET请求: ```javascript const Karin = require('karin');...

    node crawler如何添加promise支持

    这个改造不仅允许我们利用Promise的链式调用来处理异步操作,还使得我们可以方便地添加额外的错误处理和监控机制。例如,我们可以在构造函数中添加错误统计,或者在`callback`中检查HTTP状态码以判断是否为成功的...

    Promise规范及应用

    三、Promise的链式调用 Promise实例有then方法,可以添加回调函数处理异步操作的结果。then方法返回一个新的Promise实例,这就是所谓的链式调用。这样可以将多个异步操作串联起来,每个操作都依赖前一个操作的结果。...

    Node.js-StuQ分享专题《深入浅出jsNode.js异步流程控制》完整版

    Promise链式调用可以清晰地组织异步代码,提高了可读性和可维护性。 4. **async/await**:基于Promise,async/await提供了更加简洁的异步编程语法。在async函数中,可以使用await关键字等待一个Promise,使得异步...

    如何将Node.js中的回调转换为Promise

    现在,我们可以通过`.then()`和`.catch()`链式调用来处理异步操作的结果,这使得代码更加清晰和易于管理。此外,对于那些不支持Promise的旧库,我们可以使用`util.promisify()`方法(在Node.js 8.0.0及以上版本可用...

    Node.js-pify-Promisify一个回调风格的函数

    `pify` 就是一个在Node.js环境中将回调风格的函数转化为返回Promise的工具库,使得代码可以更好地遵循Promise链式调用的规范,提升代码可读性和可维护性。 `pify` 的核心功能在于将那些接受回调函数作为最后一个...

    前端开源库-callback2promise

    Promise链式调用允许我们按照顺序执行异步操作,同时提供了更清晰的错误处理方式。使用`.then`来处理成功的结果,使用`.catch`来捕获并处理错误。 callback2promise库的工作原理是将一个接受回调函数的函数包装成...

    《Node入门一本全面地Node.js教程》PDF

    - **Promise**:Promise是解决回调地狱的工具,提供了链式调用和错误处理机制。 - **async/await**:基于Promise的async函数可以使得异步代码更接近同步风格,提高可读性。 7. **中间件框架**: - **Express**:...

    javascript-promise-book.pdf

    Promise对象通过`.then()`和`.catch()`方法链式调用,用于处理异步操作的结果。 在JavaScript中使用Promise,有以下几个关键点: 1. Promise构造函数接受一个函数作为参数,这个函数也接受两个参数:resolve和...

Global site tag (gtag.js) - Google Analytics