mongodb-mapReduce()作用域-未定义的值转换为空值

mongodb-mapReduce()作用域-未定义的值转换为空值,mongodb,null,mapreduce,undefined,Mongodb,Null,Mapreduce,Undefined,如果我将一个具有未定义值的变量放入mapReduce()的“scope”参数中,则map函数将接收具有空值(而不是未定义值)的变量。对吗 例如(“mongo”命令的javascript框架): 这将把“myvar:null”(而不是“myvar:undefined”)打印到服务器日志(复制集成员日志)中。当通过mapReduce()时,未定义的值是否自动转换为空值?是未定义的值在mongodb中转换为null值 这样做的原因是为了保持与旧版Spider Monkey JS引擎的向后兼容性,而不是

如果我将一个具有未定义值的变量放入mapReduce()的“scope”参数中,则map函数将接收具有空值(而不是未定义值)的变量。对吗

例如(“mongo”命令的javascript框架):


这将把“myvar:null”(而不是“myvar:undefined”)打印到服务器日志(复制集成员日志)中。当通过mapReduce()时,未定义的值是否自动转换为空值?

未定义的
值在mongodb中转换为
null

这样做的原因是为了保持与旧版Spider Monkey JS引擎的向后兼容性,而不是破坏依赖于该行为的现有代码

db.mycol.mapReduce(
                        f_map,
                        f_reduce,
                        {
                            scope: { myvar:   undefined}
                        }
                  );

function f_map()
{
    print("myvar: " + myvar);
}