mongodb reduce函数返回不正确的结果

时间:2015-01-27 09:04:40

标签: javascript arrays mongodb

我正在尝试从map函数对values数组进行计算,但是当我对值的元素执行计算时,它们是错误的,当我询问数组本身时,值是正确的。这是我的地图功能:

function Map() {
var tempDate = new Date(Date.parse(this.date));
var day = Date.UTC(tempDate.getFullYear(), tempDate.getMonth(), tempDate.getDate());
var sensorTime = Date.UTC(tempDate.getFullYear(), tempDate.getMonth(), tempDate.getDate(),tempDate.getHours(), tempDate.getMinutes(), tempDate.getSeconds(), tempDate.getMilliseconds());
sensorTime = sensorTime - day;
emit(
        day,
        {time : sensorTime, 
         seq : parseInt(this.seq_no) }
         ); 


}
在reduce函数中的

我按照sensorTime对values数组进行排序,然后尝试从最后一个element.seq中减去第一个element.seq,但我总是得到一个不正确的答案。 : -

function Reduce(key, values) {


var len = values.length;
var a = 0;
var b = len -1;


// ascending order
function SortByTime(x,y) {
return parseInt(x.time) - parseInt( y.time); 
}
values.sort(SortByTime);


return {time : 0, seq : (values[b].seq - values[0].seq)};

}

如果我只是在没有计算的情况下返回其中一个值,那么它是正确的。我已经尝试强制输入数字,但没有任何区别。我相信我错过了一些明显的东西。

感谢

0 个答案:

没有答案