草庐IT

reduce_by

全部标签

JavaScript reduce 在对象数组上返回对象

我有一个对象数组,比方说[{x:2,y:3},{x:5,y:4}]我调用reduce((c,n)=>c.y+n.y);就可以了。它显然会返回7。但是,如果数组包含单个对象,假设[{x:2,y:4}]相同的reduce调用将返回对象本身{x:2,y:4}。这是正常行为吗?之后我是否有义务检查结果是否为对象而不是数字? 最佳答案 是的,这是reduce的正常行为当您没有为累加器传递初始值时(您总是应该传递)。除了具有两个对象的数组之外,您的代码无法在任何数组上按预期工作。去吧arr.reduce((acc,el)=>acc+el.y,0

javascript - 调用 reduce 对对象数组求和返回 NaN

我有类似的代码:vartemp=[{"y":32},{"y":60},{"y":60}];varreduced=temp.reduce(function(a,b){returna.y+b.y;});console.log(reduced);//PrintsNaN为什么打印NaN而不是152? 最佳答案 您可以使用一个起始值,然后只从数组中添加一个值。vartemp=[{"name":"Agency","y":32,"drilldown":{"name":"Agency","categories":["APPS&SI","ERS"],

javascript - 从 Redux reducer 发出事件

我在一个简单的射击游戏中使用redux作为状态容器。状态是完全确定的,系统接收的唯一输入是用户输入(例如,开火等)。我的问题是我必须跟踪(和处理)游戏中发生的某些事件(例如某些东西被摧毁等),我不太确定该怎么做。我目前的解决方案是,reducer在当前状态下维护一个events数组,每个reducer只是将事件附加到它。FIRE_WEAPON+-+FIRE_WEAPON+-+||||+-v--------+--------------v------------->||+->PLAYER_DESTROYED这里reduce接收到两个FIRE_WEAPONAction,并且应该“发射”一个

javascript - 一系列 promise 如何与 reduce 一起工作?

我正在阅读这篇文章HERE,它讲述了如何使用reducewithpromises,最后显示了以下代码片段:consttasks=getTaskArray();returntasks.reduce((promiseChain,currentTask)=>{returnpromiseChain.then(chainResults=>currentTask.then(currentResult=>[...chainResults,currentResult]));},Promise.resolve([])).then(arrayOfResults=>{//Dosomethingwithall

javascript - 检测 "Refused to display document because display forbidden by X-Frame-Options."错误的方法?

这个问题在这里已经有了答案:Catcherrorififramesrcfailstoload.Error:-"Refusedtodisplay'http://www.google.co.in/'inaframe.."(8个答案)关闭6年前。我正在使用“googleviewer”查看一些文档。唯一的问题是,如果浏览器有一个处于“边缘”的谷歌登录,它什么都不显示,并且“拒绝显示文档,因为X-Frame-Options禁止显示。”发生错误并显示在控制台中。我所说的“limbo”是指已知登录但用户必须重新输入密码以重新验证自己的情况。是否有一种方法可以检测此错误何时发生,以便我可以显示弹出错误

javascript - 如何更改h :outputText value by JavaScript?

我已经用2个inputText测试过,它运行良好例如vartdate=document.getElementById('txtDate');//h:inputTextvartdt=document.getElementById('txtDateTime');//h:inputTexttdate.onchange=function(){tdt.value=tdate.value;};如何更改“tdt”-h:outputText的值?vartdate=document.getElementById('txtDate');//h:inputTextvartdt=document.getEle

javascript - 使用 JavaScript Reduce 生成对象

我有一个数字数组[22,44,12,9,4,23,1,11,10,5,2,123],我需要使用reduce来创建一个看起来像这样的对象:{numbersLessThanTen:[...],numbersGreaterThanTen:[...]}我有解决方案,如下所示:constlistOfNumbers=[22,44,12,9,4,23,1,11,10,5,2,123];constgroupedBySize=listOfNumbers.reduce((total,next)=>{constless=total.numbersLessThanTen||[];constmore=total

javascript - D3js : Dragging a group by using one of it's children

Jsfiddle:http://jsfiddle.net/6NBy2/代码:varin_editor_drag=d3.behavior.drag().origin(function(){varg=this.parentNode;return{x:d3.transform(g.getAttribute("transform")).translate[0],y:d3.transform(g.getAttribute("transform")).translate[1]};}).on("drag",function(d,i){g=this.parentNode;translate=d3.tr

javascript - LoopBack "group by"能用mySQL吗?

我是LoopBack的新手,我似乎遗漏了什么。我听说过很多关于StrongLoop和LoopBack的事,我很难相信这根本不存在。我的情况:我正在计算每个不同严重性的事件数量。以表格为例:EventID|Severity1|22|23|44|35|36|57|18|2现在我想计算事件的数量并按严重性对它们进行分组,所以我得到类似这样的JSON返回:{1:1,2:3,3:2,4:1,5:1}*(severity:count)*使用SQL非常简单,只需使用"SELECTseverity,count(severity)FROMeventsGROUPBYseverity"。我已经对此进行了一段

javascript - 如何修复 'Access to XMLHttpRequest has been blocked by CORS policy' 重定向不允许预检请求只有一条路线

我正在设置laravel和vuejs。laravel和前端端的CORS插件我使用Axios调用RESTapi我得到了这个错误在“https://xx.xxxx.xx”访问XMLHttpRequest'从原点'http://localhost:8080'已被CORS策略阻止:对预检的响应请求未通过访问控制检查:不允许重定向预检请求。thisisforavuejsaxiossetup**main.js**axios.defaults.baseURL=process.env.BASE_URL;axios.defaults.headers.get['Accepts']='application