javascript中内置函数减少应用的详细解决方案
一般来说,可以通过该方法减少逻辑可以通过foreach方法掩饰的实施,虽然目前还不清楚的是,浏览器的Javascript引擎是如何实现这两个方法但肯定C++水平,降低的方法有一个数组的遍历,在具体的实施细节是否项目操作什么是最佳的存储可以没有它的阵列。
数组缩减法的应用
缩减方法有两个参数。第一个参数是回调,它用于数组项的操作。第二个参数是传入的初始值,该值用于单数组项的操作,重要的是要注意减少方法的返回值不是一个数组,而是一个重叠操作,如初始值。
在还原法中最常见的场景是叠加。
var项目= { 10, 120, 1000 };
减速器功能
VaR减速机=功能添加(sumsofar,项){ return sumsofar +项目;};
这项工作/做
无功总= items.reduce(减速器,0);
console.log(总); / / 1130
如你所见,减函数总是叠加在0的初始值上,以完成最简单的求和。
前面一节还提到,还原函数的返回结果类型与传入的初始值相同。最后一个实例的初始值是数字类型,初始值也可以是对象类型。
var项目= { 10, 120, 1000 };
减速器功能
Var reducer = function add (sumSoFar, item) {
sumsofar.sum = sumsofar.sum +项目;
返回sumsofar;
};
这项工作/做
无功总= items.reduce(减速机,{和}:0);
console.log(总); / / {和}:1130
多重叠加
多维数据的叠加,可以通过减少的方法来完成的。在这个例子中,如{和}初始值:0,这是只有一个维度的操作,如果多个属性的叠加,如{金额:0,totalineuros:0,totalinyen:0 },到相应的逻辑处理。
然后,采用分治方法将减函数的第一个参数回调作为一个数组进行封装,由数组中的每一个函数叠加,完成还原操作。
无功managereducers =功能(减速机){
返回函数(状态,项){
返回object.keys(减速),减少(
功能(nextstate,关键){
减速器{键}(状态,项);
返回状态;
},
{ }
);
}
};
以上是管理功能的实现,这就要求减速器对象作为参数,如降低第一个参数返回一个回调函数,在函数、多维叠加(Object.keys())进行。
通过这种分而治之,我们可以将目标的多个属性的同时,和完整的代码如下:
var缩减器= {
totalineuros:功能(国家项目){
返回state.euros = item.price * 0.897424392;
},
totalinyen:功能(国家项目){
返回state.yens = item.price * 113.852;
}
};
无功managereducers =功能(减速机){
返回函数(状态,项){
返回object.keys(减速),减少(
功能(nextstate,关键){
减速器{键}(状态,项);
返回状态;
},
{ }
);
}
};
无功bigtotalpricereducer = managereducers(减速);
无功状态= {欧元:0,日元:0 };
var项目=价格:10 },{价格:120 },{价格:1000 } };
VaR的总数= items.reduce(bigtotalpricereducer,初始状态);
console.log(汇总);
总结
以上是javascript内置函数减少应用程序的全部内容。我希望这篇文章能帮助你学习或工作。如果有任何疑问,你可以留言。