Javascript 如何比较输出的过去值?

Javascript 如何比较输出的过去值?,javascript,arrays,Javascript,Arrays,有人知道如何比较下图吗?我很难解决这个问题非常感谢你: 输出在for循环内。我只想比较和计数 下面是示例代码 var array_日期=[2018/03/072018/03/072018/03/072018/03/072018/03/072018/03/072018/03/082018/03/092018/03/09]; var eventType=[缺席,缺席,迟到,迟到,迟到,缺席,缺席,迟到]; var prev_数组_日期=; var prev_eventType=; fori=0;i

有人知道如何比较下图吗?我很难解决这个问题非常感谢你:

输出在for循环内。我只想比较和计数

下面是示例代码

var array_日期=[2018/03/072018/03/072018/03/072018/03/072018/03/072018/03/072018/03/082018/03/092018/03/09]; var eventType=[缺席,缺席,迟到,迟到,迟到,缺席,缺席,迟到]; var prev_数组_日期=; var prev_eventType=;
fori=0;i您可以使用日期和类型作为对象的索引,并根据需要轻松填充它。 尝试使用下面的代码,它应该做你想要的

var array_date = ["2018/03/07","2018/03/07","2018/03/07","2018/03/07","2018/03/07","2018/03/08","2018/03/09","2018/03/09"];

var eventType = ["Absent","Absent","Late","Late","Late","Absent","Absent","Late"];

var count_obj = {};
for(i = 0; i <array_date.length; i++){
  console.log("sort_unique_arr_date[b]: "+array_date[i]);
  console.log("temp_eventType: "+eventType[i]);
  console.log("---------------------------------------------------");
  let key = array_date[i];
  let s_key = eventType[i];
  if( ! count_obj.hasOwnProperty(key) ){
        count_obj[ key ] = {};
  }
  if( ! count_obj[ key ].hasOwnProperty(s_key) ){
        count_obj[ key ][ s_key ] = 0;
  }

    count_obj[ key ][ s_key ] += 1;

}
console.log("--OUTPUT BELOW--");
for( date in count_obj){
    console.log(date);
    for( type in count_obj[date] ){
        // if you put 'console.log(date);' here you'll have exactly the output you wanted
        console.log(type +' - '+count_obj[date][type]);
    }
}

检查

输出是否在for循环内…for循环在哪里?更好地解释您试图实现的目标和您得到的结果如果我理解正确,您希望访问上一次迭代的值。在这种情况下,在代码的其余部分下面添加一个var prev_date=current_date。这样,在执行逻辑之前,它不会被重新分配,并且它将保存来自上一个逻辑的值iteration@Yuri我刚刚更新了示例代码,它将计算有多少个是相同的值。如果您知道当前索引和需要比较的索引的偏移量,则不需要保存上一个日期值,在数组迭代中。使用:数组[i-1]来知道上一次迭代的值。如何将每个日期分开,就像我给出的输出一样??