草庐IT

Promise方法

全部标签

Javascript 不调用原型(prototype)方法

我尝试覆盖一个方法和脚本是:functionwrapper(target){target.doABC=function(){alert('inwrapper');};returntarget;}functionModel(){wrapper(this);}Model.prototype.doABC=function(){alert('inModel');};vara=newModel();a.doABC();结果是“包装”。不知道为什么? 最佳答案 任何JavaScript对象都有自己的和继承的属性。Own是直接在实例上定义的,in

javascript - HTTP Promise - 处理错误

我正在尝试找到一种很好的方法来处理我认为是错误的HTTP响应。我在ReactNative中使用fetch。这是我的代码。loginRequest(url){returnfetch(url,{method:'post',headers:{'Content-Type':'application/x-www-form-urlencoded;'},....}).then(response=>{returnthis.processResponse(response);});}然后……processResponse(response){if(response.status===200){retur

javascript - ES6 Promise 替换 async.eachLimit/async.mapLimit

在async,如果我需要将异步函数应用于1000个项目,我可以这样做:async.mapLimit(items,10,(item,callback)=>{foo(item,callback);});以便同时处理10个项目,限制开销并允许控制。使用ES6promise,虽然我可以轻松做到:Promise.all(items.map((item)=>{returnbar(item);}));这将同时处理所有1000个项目,这可能会导致很多问题。我知道Bluebirdhavewaystohandlethat,但我正在寻找ES6解决方案。 最佳答案

javascript - 调用 Promise.all 会抛出在非对象上调用的 Promise.all?

我正在尝试从promise中返回promise并像这样运行Promise.all:updateVideos().then(videos=>{returnvideos.map(video=>updateUrl({id:video,url:"http://..."}))}).then(Promise.all)//throwPromise.allcalledonnon-object如何使用这种Promise.all。我知道.then(promises=>Promise.all(promises))有效。但是,只是想知道为什么失败了。Expressres.json也会发生这种情况。错误信息不同

javascript - JSON.Stringify 方法替换参数不适用于嵌套对象

我有一个对象,我想将这个对象的简化版本发送到服务器。{"fullName":"DonCorleone","actor":{"actorId":2,"name":"Marlon","surname":"Brando","description":"MarlonBrandoiswidelyconsideredthegreatestmovieactorofalltime...","heroList":[],"photo":"C:\\projects\\files\\actor\\1532955376934.png"},"heroProfilePhoto":"data:image/png;ba

javascript - 在不使用 async/await 的情况下按顺序执行 promise 数组

假设我有一系列promise。我的数组中的每个元素都是一个knex.js查询生成器,并准备好执行并返回一个promise。如何按顺序运行此数组的每个元素。该数组是动态构建的。letpromisesArray=[q1,q2,q3];每个q本身不是一个promise,但它会在执行时返回一个promise。 最佳答案 这里可能是一个可能的选择:letp=Promise.resolve([]);promisesArray.forEach(q=>{p=p.then(responses=>{//basedonthenatureofeachq,t

javascript - 检查 jQuery 方法是否存在

这可能吗?无论如何,在Javascript或jQuery中。例如:$.isFunction($.isFunction());更新:但是如何检查jQuery插件的方法?有时它在调用时还没有准备好并产生错误。示例:$.isFunction($().jqGrid.format) 最佳答案 要将一个函数传递给另一个函数,请关闭():$.isFunction($.isFunction);//true!当您编写()时,您是在调用函数,并使用它返回的结果。没有参数的$.isFunction()返回false(因为undefined不是函数),所以

javascript - 在 JavaScript 中处理点/小向量的最有效方法是什么?

目前我正在创建一个基于Web的(=JavaScript)应用程序,它使用了很多“点”(=小的、固定大小的向量)。基本上有两种明显的表示方式:varpointA=[xValue,yValue];和varpointB={x:xValue,y:yValue};所以稍微翻译一下我的观点会是这样的:varpointAtrans=[pointA[0]+3,pointA[1]+4];varpointBtrans={x:pointB.x+3,pointB.y+4};从程序员的Angular来看,两者都很容易处理(对象变体更具可读性,尤其是因为我主要处理2D数据,很少处理3D,几乎不处理4D-但不会更多

javascript - 在 Javascript 中快速检查 2000 个复选框的方法?

我有一个网页,上面有几千个复选框,我想添加一个“全部选中”功能。不幸的是,我当前的实现使GoogleChrome挂起至少五秒钟。这是我尝试过的(使用jQuery):$('input').attr('checked',true);//aswellas...$('input').click();我相信实际的Javascript运行速度很快,但是浏览器可能无法如此快速地呈现所有更新。我可以做点别的吗?这是一个简化的例子:https://www.msu.edu/~weinjare/checkboxes.html我还运行了Chrome内置的分析器并得到了这些结果: 最

javascript - 在 Rails 应用程序中对 Javascript 繁重的 UI 进行集成测试的最佳方法是什么?

我们有一个在UI中广泛使用AJAXyJavascript的Web应用程序。我们使用Shoulda和Webrat对后端进行了几乎完整的代码覆盖,并希望扩展我们的测试套件以包括通过JavascriptUI进行的完整集成测试。我们尝试了Selenium,但发现它脆弱且易变。有没有更可靠的选择?更新对于那些仍在检查的人,我们最终使用了Xvfb,这样我们就可以在没有屏幕的情况下运行Firefox。允许我们在headlessJenkinsCI服务器上运行测试。我们仍然需要偶尔在本地“实时”运行测试以进行调试,但它运行良好。 最佳答案 我最近工作