Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/406.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 平衡更改日志映射减少_Javascript_Ruby On Rails_Ruby_Mongodb_Mongomapper - Fatal编程技术网

Javascript 平衡更改日志映射减少

Javascript 平衡更改日志映射减少,javascript,ruby-on-rails,ruby,mongodb,mongomapper,Javascript,Ruby On Rails,Ruby,Mongodb,Mongomapper,我有一个收藏,时间和数量都变了 在一天中,用户余额可以上升或下降,总日变化就是这些数字的总和 我的时间是从epoch开始的毫秒,amountChanged只是一个整数 这就是我为map reduce所做的尝试 def self.map <<-MAP function(){ this.tags.forEach(function(time){ date = Date(this.time); var key = {playerId: this.p

我有一个收藏,时间和数量都变了

在一天中,用户余额可以上升或下降,总日变化就是这些数字的总和

我的时间是从epoch开始的毫秒,amountChanged只是一个整数

这就是我为map reduce所做的尝试

def self.map  
<<-MAP  
  function(){
    this.tags.forEach(function(time){
      date = Date(this.time);
      var key = {playerId: this.playerId,
                  year: date.getFullYear(),
                  month: date.getMonth(),
                  day: date.getDate(),
                  amountChanged: this.amountChanged
                };
      emit(key, 1);
    });  
  }  
MAP
end  

def self.reduce   
<<-REDUCE  
function(key, values) 
{
   var sum = 0;
   values.forEach(function(value)
   {
     sum += value['amountChanged'];
   });
   return sum;
};
REDUCE
end
我想做的是按天分组,将amountChange值相加,计算余额变化

一个额外的好处是,在一天开始的时候,还可以输出带有分组数据的余额


这是我通过google查看的示例的最佳尝试,我想我很接近,但调试起来很困难。

您遇到了什么错误?你试过在shell中运行它吗?你是说mongo shell还是ruby shell?mongo shell。通常它更容易调试,应该只需要一些复制和粘贴。你犯了什么错误?这是语法问题还是代码运行时没有得到预期的结果?