Mapreduce 为什么CouchDB中的reduce函数不返回数组?
CouchDB中的reduce函数用于返回数组,但当我运行coach查询时,得到的是类似于6.9533536257605e-310的内容,而不是数组 我已经在在线javascript编辑器中测试了我的代码,当我使用console.log()时,返回的值是一个数组,但在CouchDb中我没有得到该数组 映射函数Mapreduce 为什么CouchDB中的reduce函数不返回数组?,mapreduce,couchdb,Mapreduce,Couchdb,CouchDB中的reduce函数用于返回数组,但当我运行coach查询时,得到的是类似于6.9533536257605e-310的内容,而不是数组 我已经在在线javascript编辑器中测试了我的代码,当我使用console.log()时,返回的值是一个数组,但在CouchDb中我没有得到该数组 映射函数 function (doc) { if(doc.docType="Asset" && doc.owner){ emit(doc.owner,doc.name);
function (doc) {
if(doc.docType="Asset" && doc.owner){
emit(doc.owner,doc.name);
}
}
还原函数
function (keys, values, rereduce) {
if (rereduce) {
s=values[0];
for ( var i of values){
s=s.concat(i);
s=[...new Set(s)];
}
return s;
} else {
var s=[];
for ( var i of values){
s.push(i);
}
s=[...new Set(s)];
return s;
}
预期产量
Tom ["laptop","mobile"]
Harry ["bike","scooter"]
实际产量
Tom 6.9533536257605e-310
Harry 6.9525841588194e-310
您如何测试这个生成您看到的输出的函数?实际输出由CouchDb MapReduce函数返回,而预期输出是通过在在线编辑器和控制台中通过self传递值并记录输出来实现的。要传递的值是根据map函数的输出确定的,这与预期的一样。问题只在于reduce函数返回的输出。您如何测试生成您看到的输出的此函数?实际输出由CouchDb MapReduce函数返回,而预期输出是通过在联机编辑器和控制台中通过self传递值并记录输出来实现的。要传递的值是根据map函数的输出确定的,这与预期的一样。问题只在于reduce函数返回的输出。