これはCouchbaseドキュメントからのコーディングであり、理解できません
function(key, values, rereduce) {
var result = {total: 0, count: 0};
for(i=0; i < values.length; i++) {
if(rereduce) {
result.total = result.total + values[i].total;
result.count = result.count + values[i].count;
} else {
result.total = sum(values);
result.count = values.length;
}
}
return(result);
}
- rereduce は、現在の関数呼び出しが既に reduce を実行したかどうかを意味します。右?
- reduce 関数の最初の引数である key は、いつ使用されますか? 例をいくつか見ましたが、キーは未使用のようです
- rereduce が true を返し、配列サイズが 1 より大きいのはいつですか?
- 繰り返しになりますが、rereduce の戻り値が false で、配列サイズが 1 より大きいのはどのような場合ですか?