我在 mongoDB 中有 Reduse 函数。我想打印每个州城市的 AVG。 我只得到一个正确的结果,其余的将是 nan
map 功能
function map(){
key = {state : this.state};
values = { numberOfCities:1, statePop: this.pop};
emit(key, values)}
和reduce函数
function reduce(key , values){
numberOfCities = 0.0;
statePop = 0.0;
avg = 0.0;
for (i in values){
numberOfCities += values[i].numberOfCities;
statePop += values[i].statePop;
avg = statePop/numberOfCities;
}
return avg}
如果我返回带有 numberOfCities 的 statePop,我将得到正确的数字,但如果我返回操作 statePop/numberOfCities,我将得到它的 nan 值
错误
json文件(这是一行json文件)
{ "_id" : "20002", "city" : "WASHINGTON", "loc" : [ -76.990055, 38.902365 ], "pop" : 56756, "state" : "DC" }
最佳答案
i
是您的值对象的实例,而不是索引。所以不要使用 values[I].property
使用 i.property
关于javascript - 为什么我的大部分结果都是 nan,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42407799/