【javascript-循环从节点promise返回的对象,并馈送到下一个.then】教程文章相关的互联网学习教程文章

javascript – 如何从promise中返回数据【代码】

参见英文答案 > How do I return the response from an asynchronous call? 35个我需要从promise中获取response.data,以便它可以由封闭函数返回.我知道,由于JavaScript范围正常,我可能无法按照我编写的方式执行此操作.有什么办法,可以做到吗? #1处的console.log生成正确的数据. console.log#2总是生成’a’;function addSiteParentId(nodeId) { var theParentId = 'a';var parentId = relat...

javascript – 如何将Promise.all与对象一起用作输入【代码】

我一直在为我自己使用的小型2D游戏库工作,我遇到了一些问题.库中有一个名为loadGame的特定函数,它将依赖信息作为??输入(资源文件和要执行的脚本列表).这是一个例子.loadGame({"root" : "/source/folder/for/game/","resources" : {"soundEffect" : "audio/sound.mp3","someImage" : "images/something.png","someJSON" : "json/map.json"},"scripts" : ["js/helperScript.js","js/mainScript.js"] })资源中的每个项目都有一个密钥,...

javascript – 为什么Promises Monads?【代码】

我一直在学习函数式编程,并且遇到了Monads,Functors和Applicatives. 根据我的理解,以下定义适用: a)(A => B)=> C [A] => C [B] |函子 b)(A => C [B])=> C [A] => C [B] |单子 c)(C [A => B])=> C [A] => C [B] |合用的 (参考:https://thedet.wordpress.com/2012/04/28/functors-monads-applicatives-can-be-so-simple/) 此外,我了解Monad是Functor的一个特例.在中,它应用一个函数,该函数将包装值返回到包装值并返回包装值. 当我们...

javascript – NodeJS UnhandledPromiseRejectionWarning【代码】

所以,我正在测试一个依赖于事件发射器的组件.为此,我想出了一个使用Promise with Mocha Chai的解决方案:it('should transition with the correct event', (done) => {const cFSM = new CharacterFSM({}, emitter, transitions);let timeout = null;let resolved = false;new Promise((resolve, reject) => {emitter.once('action', resolve);emitter.emit('done', {});timeout = setTimeout(() => {if (!resolved) {reject('Timed...

javascript – 理解JS Promises【代码】

我想更深入地了解Promises如何在内部工作.因此我有一些示例代码:var p1 = new Promise( function(resolve, reject) { window.setTimeout(function() {resolve('res called')}, 2000); });var p2 = new Promise( function(resolve, reject) { window.setTimeout(function() {resolve('res called')},2000); });function chainPromises(){ return p1.then(function(val) {console.log("p1");return p2.then(function(v...

javascript – 在调用所有promise之后通过jQuery Deferreds循环【代码】

我目前正在尝试使用HTML5 FileAPI构建文件上传器.如果文件是图像,则文件上载器应该处理多个文件并显示图像预览. 由于FileReader类异步工作,我想等到所有文件都被读取.因此我使用Deferreds. 读取文件的方法返回一个promise.另一种方法遍历所有文件并将所有promises推送到数组中.然后我将所有promises添加到我的数组后应用then()方法. 现在我的问题.因为then()方法只被调用一次,所以我得到了所有的承诺.我没有机会处理每一个承诺.我想...

javascript – RxJS Promise组合(传递数据)【代码】

我是Rx的新手,我发现很难找到有关组合承诺的文档,以便第一个承诺的数据传递到第二个承诺,依此类推.这是三个非常基本的承诺,对数据的计算并不重要,只是必须使用先前承诺的数据来完成异步.const p1 = () => Promise.resolve(1);const p2 = x => { const val = x + 1; return Promise.resolve(val); };const p3 = x => {const isEven = x => x % 2 === 0;return Promise.resolve(isEven(x));};实现我正在谈论的构图的传统方式:pl().t...

javascript – Promise vs setTimeout【代码】

我在以下代码中观察到:setTimeout(function(){console.log('setTimeout')}); Promise.resolve(1).then(function(){console.log('promise resolve')})无论我执行多少次,promise回调总是在setTimeout之前记录. 我的理解是两个回调都安排在下一个时钟执行,而我真的不明白发生了什么使得承诺总是优先于超时.解决方法:简短回答Promise比事件循环堆栈中的setTimeout回调函数(或我如何理解它)具有更好的优先级. 很长的回答观看此视频.很有...

javascript – 如何顺序执行promises,从数组传递参数?【代码】

var myArray = [1, 2, 3, 4, 5, 6]function myPrommise(num){return new Promise(res => {window.setTimeout(()=>{res( console.log("done: " + num) )},2000)}) }myPrommise(myArray[0]).then(x => myPrommise(myArray[1])).then(x => myPrommise(myArray[2])).then(x => myPrommise(myArray[3])).then(x => myPrommise(myArray[4])).then(x => myPrommise(myArray[5]))现在,如果我执行上面的语句,它将按顺序运行.在我的实际用例...

javascript – 我应该避免异步处理Promise拒绝吗?【代码】

我刚安装了Node v7.2.0并了解到以下代码:var prm = Promise.reject(new Error('fail'));结果如下:(node:4786) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): Error: fail (node:4786) DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.我理解这背...

javascript – 如何在循环中返回许多Promise并等待它们全部做其他事情【代码】

我有一个循环调用一个异步执行的方法.这个循环可以多次调用该方法.在这个循环之后,我有另一个循环,只有在完成所有异步操作后才需要执行.所以这说明了我的愿望:for(i=0;i<5;i++){doSomeAsyncStuff(); }for(i=0;i<5;i++){doSomeStuffOnlyWhenTheAsyncStuffIsFinish(); }我对承诺并不熟悉,所以有人能帮助我实现这一目标吗? 这就是我的doSomeAsyncStuff()行为:doSomeAsyncStuff{var editor = generateCKEditor();editor.on(...

javascript – 在promise链上使用setTimeout【代码】

在这里,我试图围绕promises.Here在第一次请求我获取一组链接.并在下一个请求我获取第一个链接的内容.但我想在返回下一个promise对象之前做一个延迟.所以我使用它上面有setTimeout.但是它给了我以下JSON错误(没有setTimeout()它工作得很好)SyntaxError: JSON.parse: unexpected character at line 1 column 1 ofthe JSON data我想知道为什么会失败?let globalObj={}; function getLinks(url){return new Promise(function(resolve,...

javascript – 取消vanilla ECMAScript 6 Promise链【代码】

有没有一种方法可以清除JavaScript Promise实例的.thens? 我在QUnit之上编写了一个JavaScript测试框架.该框架通过在Promise中运行每个测试框架来同步运行测试. (抱歉这个代码块的长度.我尽可能地评论它,所以感觉不那么乏味.)/* Promise extension -- used for easily making an async step with atimeout without the Promise knowing anything about the function it's waiting on */ $$.extend(Promise, {asyncTimeout: functio...

javascript – 为什么在.then()链接到Promise时未定义值?【代码】

特定function doStuff(n /* `n` is expected to be a positive number */) {return new Promise(function(resolve, reject) {setTimeout(function() {resolve(n * 10)}, Math.floor(Math.random() * 1000))}).then(function(result) {if (result > 100) {console.log(result + " is greater than 100")} else {console.log(result + " is not greater than 100");}}) }doStuff(9) .then(function(data) {console.log(data) // `und...

javascript – React router 4:如何在Route的render方法中等待promise的解析?【代码】

我正在尝试实现功能,其中每个Route将首先等待一些ajax承诺解决,然后才会呈现路由.我看到onEnter不再存在,所以我正在尝试渲染方法. 我的路线定义如下:{cmsRoutes.map((route, idx) => {console.log(route.resolve)return route.component ? (<Route key={idx} path={route.path} exact={route.exact} name={route.name} render={props =>{route.resolve().then(({data})=>{console.log(data)return (<route.component {...props} ...

PROMISE - 相关标签
JAVASCRIPT - 技术教程分类
JavaScript 教程 JavaScript 简介 JavaScript 用法 JavaScript Chrome 中运行 JavaScript 输出 JavaScript 语法 JavaScript 语句 JavaScript 注释 JavaScript 变量 JavaScript 数据类型 JavaScript 对象 JavaScript 函数 JavaScript 作用域 JavaScript 事件 JavaScript 字符串 JavaScript 运算符 JavaScript 比较 JavaScript 条件语句 JavaScript switch 语句 JavaScript for 循环 JavaScript while 循环 JavaScript break 和 continue 语... JavaScript typeof JavaScript 类型转换 JavaScript 正则表达式 JavaScript 错误 JavaScript 调试 JavaScript 变量提升 JavaScript 严格模式 JavaScript 使用误区 JavaScript 表单 JavaScript 表单验证 JavaScript 验证 API JavaScript 保留关键字 JavaScript this JavaScript let 和 const JavaScript JSON JavaScript void JavaScript 异步编程 JavaScript Promise JavaScript 代码规范 JavaScript 函数定义 JavaScript 函数参数 JavaScript 函数调用 JavaScript 闭包 DOM 简介 DOM HTML DOM CSS DOM 事件 DOM EventListener DOM 元素 HTMLCollection 对象 NodeList 对象 JavaScript 对象 JavaScript prototype JavaScript Number 对象 JavaScript String JavaScript Date(日期) JavaScript Array(数组) JavaScript Boolean(布尔) JavaScript Math(算数) JavaScript RegExp 对象 JavaScript Window JavaScript Window Location JavaScript Navigator JavaScript 弹窗 JavaScript 计时事件 JavaScript Cookie JavaScript 库 JavaScript 实例 JavaScript 对象实例 JavaScript 浏览器对象实例 JavaScript HTML DOM 实例 JavaScript 总结 JavaScript 对象 HTML DOM 对象 JavaScript 异步编程 javascript 全部