Using promises】的更多相关文章

今天有同事问我下面这段代码是什么意思: var MyClass = function() { events.EventEmitter.call(this); // 这行是什么意思? }; util.inherits(MyClass, events.EventEmitter); // 还有这行? 我也不是很明白,于是研究了一下.下面是我的一些体会. Christmas Trees和Errors 如果你写过JavaScript或NodeJS代码,你也许会对callback地狱深有体会.每次当你进行异…
Promises是一种异步编程模型,通过一组API来规范化异步操作,这样也能够让异步操作的流程控制更加容易. 下面的代码是假设执行一个异步队列,每一项都会使用上一项返回的数据: function nest(url, params, fn) { $.getJSON(url, params, function(data) { console.log(data); fn.call(this); }); } nest('promise.php', {a:1}, function(data1) { nes…
本文来自四火哥的翻译 CommonJS是一组javascript编程规范,而promise是其中之一. 简而言之,promises是一种令代码的异步行为变得更加优雅的软件抽象.在基本的定义中,代码可能一直是这样写的 getTweetsFor("domenic", function (err, results) { // the rest of your code goes here. }); 现在你的方法有一个返回值,叫做promise,它代表操作的最终结果. var promiseF…
原文地址:http://fex.baidu.com/blog/2015/07/we-have-a-problem-with-promises/ 用Javascript的小伙伴们,是时候承认了,关于 promises 我们一直存在着问题.并非说 promises 本身有问题,Promises/A+ 是极好的. 就我过去数年观察大量 PouchDB API 以及其他 promise-heavy API 的使用者们与这些 API 的搏斗中我发现,最大的问题是: 大部分使用 promises 的小伙伴们…
jasmine提供了很多些很实用的处理Promises的方法,首先我们来考虑下面的这个例子: angular.module("myApp.store").controller("StoresCtrl", function($scope, StoreService, Contact) { StoreService.listStores().then(function(branches) { Contact.retrieveContactInfo().then(func…
什么是 Promises Promises是一种关于异步编程的规范,目的是将异步处理对象和处理规则进行规范化,为异步编程提供统一接口. 传统的回调函数 说到JavaScript的异步编程处理,通常我们会想到回调函数,如下面的代码: getFileAsync("1.txt", function(error, result){ if(error){ throw error; } // 取得成功时的处理 }); 上面的代码定义了一个获取文件内容的函数,读取完成后回调用传入的回调函数,对于下面…
一.前言 Promises/A是由CommonJS组织制定的异步模式编程规范,有不少库已根据该规范及后来经改进的Promises/A+规范提供了实现 如Q, Bluebird, when, rsvp.js, mmDeferred, jQuery.Deffered()等. 虽然上述实现库均以Promises/A+规范作为实现基准,但由于Promises/A+是对Promises/A规范的改进和增强,因此深入学习Promises/A规范也是不可缺少的. 本文内容主要根据以下内容进行学习后整理而成,若…
假设一个业务场景: 通过rss地址,获取rss并保存于文件,rss地址保存于文件中. 完成该场景的业务需要完成3个任务: 1.从文件中读取rss地址. 2.获取rss. 3.保存于文件. 最后将这三个任务进行整合. 准备: 存放rss地址的文件,address.txt. http://programmer.csdn.net/rss_programmer.html 任务1: 读取rss地址文件的内容并通过callback返回. var getRssAddress = function(path,…
你可能已经无意中听说过 Promises,很多人都在讨论它,使用它,但你不知道为什么它们如此特别.难道你不能使用回调么?有什么了特别的?在本文中,我们一起来看看 Promises 是什么以及如何使用它们写出更优雅的 JavaScript 代码. 您可能感兴趣的相关文章 开发中可能会用到的几个 jQuery 提示和技巧 精心挑选的优秀jQuery Ajax分页插件和教程 推荐几款很好用的 JavaScript 文件上传插件 精心挑选的优秀 jQuery 文本特效插件和教程 精心挑选12款优秀 jQ…
官网地址 本文内容 简介 Futures 阻塞 异常 Promises 工具 最近看了<七周七语言:理解多种编程泛型>,介绍了七种语言(四种编程范型)的主要特性:基本语法,集合,并行/并发,其中就有 Scala.你不能指望这种书全面介绍,因为其中任何一门语言都够写一本书了~ 我比较关注并行/并发,但是书中关于 Scala 的并发部分--Actor,可代码编译不通过,官网标注"Deprecated",哎,这书点不负责,示例代码也不写采用编译器的版本~ Java 8 之前,函数…
英文原文:What's The Point Of Promises? 迄今为止,可能每个JavaScript开发者和他们的祖母都听说过Promises.如果你没有,那么你即将会.promises的概念是由CommonJS小组的成员在 Promises/A规范 中提出来的.Promises被逐渐用作一种管理异步操作回调的方法,但出于它们的设计,它们远比那个有用得多.事实上,由于它们的多种用法,有无数人告诉我——在我写过一些关于promises的东西后——我“遗漏了promises的重点”.那么什么…
原文地址:https://promisesaplus.com/ 本篇为原文翻译+个人理解,若有谬误请各位指正,谢谢. 尊重原创,转载请注明来自:http://www.cnblogs.com/fsjohnhuang/p/4139172.html  ^_^肥仔John 一个可靠的可共同协作的JavaScript Promise开放标准 promise代表一个异步操作的最终结果.主要通过promise的then方法订阅其最终结果的处理回调函数,和订阅因某原因无法成功获取最终结果的处理回调函数. 本说明…
Promises与Javascript异步编程 转载:http://www.zawaliang.com/2013/08/399.html 在如今都追求用户体验的时代,Ajax应用真的是无所不在.加上这些年浏览器技术.HTML5以及CSS3等的发展,越来越多的富Web应用出现:在给与我们良好体验的同时,Web开发人员在背后需要处理越来越多的异步回调逻辑. 笔者对最近读完的<Async Javascript-Build More Responsive Apps with Less Code>(Ja…
Learn how to manually control how asynchronous requests are handled with the use of promises. Because $http is built to work with promises, we saw a foreshadow of them in the previous lesson. We will take this a step further but seeing how to manuall…
原promise.js库地址:https://github.com/stackp/promisejs promises是JavaScript实现优雅编程的一个非常不错的轻量级框架.该框架可以让你从杂乱的多重异步回调代码中解脱出来,并把精力集中到你的业务逻辑上. 今天从GIT源码库中下载了promise.js,发现该源码是基于Web前端JavaScript写的,并不能直接用于nodejs.还好代码不是很多,也不是很复杂.经过分析整合,将其实现为nodejs的一个框架,代码如下: (function…
迄今为止,可能每个JavaScript开发者和他们的祖母都听说过Promises.如果你没有,那么你即将会.promises的概念是由CommonJS小组的成员在 Promises/A规范 中提出来的.Promises被逐渐用作一种管理异步操作回调的方法,但出于它们的设计,它们远比那个有用得多.事实上,由于它们的多种用法,有无数人告 诉我——在我写过一些关于promises的东西后——我“遗漏了promises的重点”.那么什么是promises的重点呢? 一点关于Promises的东西 在我开…
在如今都追求用户体验的时代,Ajax应用真的是无所不在.加上这些年浏览器技术.HTML5以及CSS3等的发展,越来越多的富Web应用出现:在给与我们良好体验的同时,Web开发人员在背后需要处理越来越多的异步回调逻辑. 笔者对最近读完的<Async Javascript-Build More Responsive Apps with Less Code>(Javascript异步编程-设计快速响应的网络应用)一书以及部分资料,整理了我认为比较重要的一些点以及容易理解错的地方,使大家对 Promi…
非常好的文章,讲javascript 的异步编程的. --------------------------------------------------------------------------------- 原文:http://sporto.github.io/blog/2012/12/09/callbacks-listeners-promises/ When it comes to dealing with asynchronous development in JavaScript…
如何通过使用Q来并发执行多个promises呢? Q(Q(1), Q(2), Q(3)) .then(function (one, two, three) { console.log(one); console.log(two); console.log(three); }, function (ex) { console.error(ex.stack); }); 上面的代码输出结果为1.很显然,你不能简单地将各个promises都放到一个Q()函数里来执行,这样只有第一个promise会被正确…
本文是一起学习造轮子系列的第一篇,本篇我们将从零开始写一个符合Promises/A+规范的promise,本系列文章将会选取一些前端比较经典的轮子进行源码分析,并且从零开始逐步实现,本系列将会学习Promises/A+,Redux,react-redux,vue,dom-diff,webpack,babel,kao,express,async/await,jquery,Lodash,requirejs,lib-flexible等前端经典轮子的实现方式,每一章源码都托管在github上,欢迎关注~…
我最喜欢的网站之一是BerkshireHathaway.com--它简单,有效,并且自1997年推出以来一直正常运行.更值得注意的是,在过去的20年中,这个网站很有可能从未出现过错误.为什么?因为它都是静态的.它自20多年前推出以来几乎一样.如果你预先拥有所有数据,那么构建网站非常简单.不幸的是,现在大多数网站都没有.为了弥补这一点,我们发明了"模式"来处理为我们的应用程序提取外部数据.像大多数事情一样,这些模式都随着时间的推移而发生变化.在这篇文章中,我们将分析这三种最常见的模式的优…
什么是promises? 为什么需要promises? 参见: https://promisesaplus.com/ 使用示例: 使用promises之前,代码的编写方式: 使用promises之后: 参考: 1. https://github.com/petkaantonov/bluebird 2. http://spion.github.io/posts/why-i-am-switching-to-promises.html 3. 如何优雅地crash你的nodejs app:  http:…
Chapter 3: Promises But what if we could uninvert that inversion of control? What if instead of handing the continuation of our program to another party, we could expect it to return us a capability to know when its task finishes, and then our code c…
[Using promises] 过去,异步方法这样写: function successCallback(result) { console.log("It succeeded with " + result); } function failureCallback(error) { console.log("It failed with " + error); } doSomething(successCallback, failureCallback); 使用…
http://sporto.github.io/blog/2012/12/09/callbacks-listeners-promises/ 或 http://www.ruanyifeng.com/blog/2012/12/asynchronous%EF%BC%BFjavascript.html   当用 Javascript 处理异步(asynchronous )时,你可以使用很多工具.本文说明四个异步的方法和工具,以及它们的优势:回调(Callbacks).监听(Listeners).流程控制…
转:Making Promises With http://www.htmlgoodies.com/beyond/javascript/making-promises-with-jquery-deferred.html…
上篇文章介绍了JavaScript异步机制,请看这里. JavaScript异步机制带来的问题 JavaScript异步机制的主要目的是处理非阻塞,在交互的过程中,会需要一些IO操作(比如Ajax请求,文件加载,Node.js中的文件读取等),如果这些操作是同步的,就会阻塞其它操作. 异步机制虽然带来了许多好处,但同时也存在一些不如意的地方. 代码可读性 这样的代码读起来简直累觉不爱啊~~~ operation1(function(err, result) { operation2(functi…
什么是 Promises Promises是一种关于异步编程的规范,目的是将异步处理对象和处理规则进行规范化,为异步编程提供统一接口.   传统的回调函数 说到JavaScript的异步编程处理,通常我们会想到回调函数,如下面的代码: getFileAsync("1.txt", function(error, result){ if(error){ throw error; } // 取得成功时的处理 }); 上面的代码定义了一个获取文件内容的函数,读取完成后回调用传入的回调函数,对于…
[译]异步JavaScript的演变史:从回调到Promises再到Async/Await https://www.i-programmer.info/programming/theory/8864-managing-asynchronous-code-callbacks-promises-a-asyncawait.html…
In my previous post in Danish I looked at how to perform asynchronous calls by using promises. Now the time has come to pick which library that fits the next project. There is a lot of variants and the spread is huge. One search for promise via the n…