如何在字段名称中使用冒号在MongoDB中执行map reduce?

时间:2013-04-22 14:57:51

标签: mongodb mapreduce field colon

我遇到了以下问题:

在MongoDB中,我的名字中包含带冒号的字段。 为了解决我通常会使用的字段:

var map = function() {
              emit(this._id, this.sth.field);
}

但字段名称中包含冒号,如:

var map = function() {
               emit(this._id, this.sth.fie:ld);
}

MongoDB返回JavaScript execution failed: SyntaxError: Unexpected token :

我该如何解决这个问题?

感谢您的帮助!

1 个答案:

答案 0 :(得分:2)

JavaScript中的属性名称可以引用或不引用。

当属性名称导致JavaScript语法无效时,您需要切换到引用的技术:this.sth['fie:ld']

var map = function() {
    emit(this._id, this.sth['fie:ld']);
}