【使用Js实现Promise库】教程文章相关的互联网学习教程文章

javascript – 等待Promise返回的第一个真实的干净方式【代码】

我正在开发一些我在数组中发出三个promise的东西.目前它看起来像这样var a = await Promise.all([Promise1(), Promise2(), Promise3()]);现在所有这些承诺将返回真或假.但是目前我正在等待他们所有人完成,一旦他们中的一个返回真实,我就可以继续. 我想到了实现这一目标的方法但看起来都很难看.你会如何解决这个任务?解决方法:您可以实现组合Promise.race和Promise.all:function firstTrue(promises) {const newPromises = promis...

javascript – 当调用Promise.then()钩子时?【代码】

我观察到在Firefox的承诺中推迟完整性通知.断言失败后,因为onFullfilled()调用太晚了*.var resolved = false; function onFullfilled() {resolved = true;log("Completed"); } Promise.resolve(true).then(onFullfilled); assert(resolved, "Promise completed promise should call resolution hook immediately.");当确保onFullfilled()保证在Promise解析时被调用? *在我的情况下,在测试框架报告断言失败后出现“已完成”日志消息...

理解JavaScript中的promise【代码】

我编写了很多JavaScript代码,尽管我认为我确实理解了promises的工作方式,但我不确定我是否完全理解了承诺给JS世界带来的好处.考虑下面的代码,简单地使用包含调用调用的回调进行异步调用,依此类推.(function doWorkOldSchool() {setTimeout(function() {// once done resolve promiseconsole.log("work done");setTimeout(function goHome() {// once done resolve promiseconsole.log("got home");try {setTimeout(function cookDi...

javascript – selenium:ManagedPromise :: 32 {[[PromiseStatus]]:“pending”}消息在导航到页面之前显示【代码】

我尝试了以下selenium-webdriverJS代码:var webdriver = require('selenium-webdriver'); var browser = new webdriver.Builder().usingServer().withCapabilities({'browserName': 'chrome' }).build();browser.get('http://localhost:1091/WebTours/sample.html'); var btn = browser.findElement(webdriver.By.id('show-coordinates')); browser.sleep(3000); var ids = btn.getAttribute("id"); console.log("attributes: " +...

javascript – 为什么不能将Promise.resolve作为函数调用?【代码】

有些东西让我和我的同事烦恼.考虑以下…const {map, compose} = require('ramda');compose(console.log,map(Math.tan) )([1,2,3]);compose(console.log,map(v=>Promise.resolve(v)) )([4,5,6]);compose(console.log,map(Promise.resolve) )([7,8,9]);正如您所期望的那样,输出1,2和3的棕褐色,以及解决3,4和5的承诺也是如此.但我的问题是……为什么第三次突破?为什么Promise.resolve的行为与其他函数的行为方式不同?[ 1.5574077246...

javascript – 使用promises配置多个功能【代码】

这是Set firefox profile with protractor主题的后续行动. 根据setFirefoxProfile howto,可以使用特殊的“helper” js code设置firefox配置文件,它使用firefox-profile和q库来动态编码firefox配置文件. 这对我有用,直到我尝试使用多个浏览器并配置multiCapabilities:exports.config = {seleniumAddress: 'http://localhost:4444/wd/hub',multiCapabilities: [{browserName: 'chrome',specs: ['footer.disabledCookies.spec.js'],c...

javascript – Intellij Idea警告 – 使用aysnc / await忽略“返回的Promise”【代码】

我在我的代码中使用Express.js和Node.js v7.3.在这里我创建了一个用户路由器,它将请求转发给我的用户控制器. 我在用户控制器内部使用async / await来进行异步调用.问题是IntelliJ给了我一个警告说Promise returned from login() is ignored.问题是我甚至没有从login()方法返回任何东西. 这是代码 – UserRouter.jsrouter.post('/login', function (req, res, next) {userController.login(req, res); // I get the warning here }...

javascript – 如何使用PapaParse的Promises?【代码】

PapaParse的API有一个异步回调函数.我想知道如何将其转化为承诺.例如:Papa.parse(fileInput.files[0], {complete: function(results) {console.log(results);} });任何帮助,将不胜感激!解决方法:基本模式是Papa.parsePromise = function(file) {return new Promise(function(complete, error) {Papa.parse(file, {complete, error});}); };然后Papa.parsePromise(fileInput.files[0]) .then(function(results) { console.log(res...

javascript – Mongoose – 为什么我们在设置mongoose模块时会制作“mongoose.Promise = global.Promise”?【代码】

我和Mongoose一起工作.我见过很多开发人员发出以下命令:mongoose.Promise = global.Promise;然后我很想知道mongoose.Promise的原始值是多少.我在编辑器中输入了以下命令:const mongoose = require("mongoose");console.log("promise: ", mongoose.Promise);我的控制台回复了我:promise: function Promise() { [native code] }好吧,那么为什么要使命令mongoose.Promise = global.Promise,因为Mongoose的承诺已经返回了本机代码?...

javascript – 避免使用promises嵌套回调【代码】

我仍然是使用Promise API的新手,我正在努力避免如何避免深度嵌套的Promise链,据我所知,这是使用Promise的好处之一.使用以下伪代码作为示例,当后续的依赖于先前的上下文时,如何避免嵌套Promise?function loadDependency1() {// return a promsise to load the first dependency }function loadDependency2(dependency1) {// return a promise to load the second dependency, which relies on the first dependency }function load...

javascript – 将成功的promise promise中的值赋值给外部变量【代码】

我有一个非常愚蠢的问题.考虑以下:vm.feed = getFeed().then(function(data) {return data;});getFeed()返回成功解析的$q延迟承诺(我在角上). 我的目标是将vm.feed设置为等于成功回调返回的数据值.就像现在一样,代码只是将vm.feed赋予等于getFeed()返回的$promise对象. 我知道我可以简单地做:vm.feed =已解析函数内的数据,但我想理解为什么这段代码不能正常工作. PD:promise正确解析,即使在解析后,vm.feed仍然等于Promise,而不是...

javascript – Google Firebase错误(函数返回未定义,预期的Promise或值)【代码】

我正在使用Firebase开发Server. 我在Youtube上复制了Google Developer’s Video. 它运行良好,但在日志中有一个错误:Function returned undefined, expected Promise or value它说函数返回undefined,但我让函数返回一个promise`set“ 我怎么解决这个问题?function sanitize(s) {var sanitizedText = s;console.log('sanitize params: ', sanitizedText);sanitizedText = sanitizedText.replace(/\bstupid\b/ig, "wonderful");retu...

为什么JavaScript Promise然后处理程序在其他代码之后运行?【代码】

我只是想提高我对JavaScript Promises如何工作的理解.我创造了以下情况:LOG 'FOO' RUN CALLBACK LOGGING 'CALLBACK' LOG 'BAR'期望所有功能立即完成(我的意思是他们不会花费过多/未知的时间来完成您将使用异步操作来完成),以便上述操作顺序将按此顺序发生. 您可以通过以下方式编写此代码:function foo(cb) {// LOG 'FOO'console.log('foo');// RUN CALLBACKcb(); }function callback() {// LOG 'CALLBACK'console.log('callback'...

javascript – Promise返回undefined【代码】

我知道你不能使异步函数同步运行但是如何在我的承诺链中添加某种订单? 一个结果依赖于先前的promise值,当没有发生时,我得到一个未定义的错误.这是一个http请求,因此它依赖于外部因素,例如我的连接可以执行请求的速度等等.module.exports.movieCheck = function(authToken) { return request({method : 'GET',uri : 'https://graph.facebook.com/' + profileID + '/posts?fields=message&limit=25&' + authToken}).spread(function...

javascript – Promise.all()没有以预期的顺序解决承诺【代码】

如果我正确理解Promise.all(),我希望这段代码需要5秒才能将拒绝的承诺的原因输出到控制台.function firstAsyncFunction() {return new Promise(function(resolve, reject){setTimeout(function(){resolve(console.log('First async function has been resolved!'));}, 500);}); }function secondAsyncFunction() {return new Promise(function(resolve, reject) {setTimeout(function(){resolve(console.log('Second async fun...

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 全部