我想把所有提交的时间加起来。但我不认为extjs允许使用= +。还有其他方法可以实现我的目标吗?
这就是我要展示的内容:console.log(time=+ time);
答案 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并继续使用更高效的内容。