如何在Extjs中使用= +?

时间:2013-11-14 06:54:23

标签: extjs

我想把所有提交的时间加起来。但我不认为extjs允许使用= +。还有其他方法可以实现我的目标吗?

这就是我要展示的内容:console.log(time=+ time);

1 个答案:

答案 0 :(得分:1)

ExtJS是“只是”JavaScript,并且JavaScript中没有从=+到“全部”的神奇映射。使用提供的表单相当于time = (0 + time)(表达式的结果为0 + time),这几乎没用。

在“times”上创建一个循环(它应该是一个像Array这样的序列!)并使用“sum”变量;或者,更好的是,使用支持sum或更高阶fold/reduce函数 1 的JavaScript函数/库(包括ExtJS中可用的函数/库)。

(事实上,Ext.Array already has a sum ..那有多好?)


1 Array.reduce 的MDC页面上的示例是一个求和函数,为了清楚起见,此处提供了一些修改:

var times = [0,1,2,3,4];
var sum = times.reduce(function(runningSum, number){
  return runningSum + number;
}, 0);

如果times序列的项目不是数字,则可以使用(使用适当修改的函数),因为Ext.Array.sum需要一系列数字。

如果必须定位旧版浏览器(例如IE 8或之前版本),请使用es5-shim.js并继续使用更高效的内容。