添加的JSON元素未显示

时间:2016-05-28 15:06:51

标签: javascript json node.js express

我使用express.js开发API。我有一个由mongoose返回的json对象,我需要在result.docs中为每个元素添加en元素。

我这样做如下:

for(a in result.docs)
    { 
       result.docs[a].links={
            "test":'test',
            "test": 'test', 
            "test": 'test' 
        };

    }

执行此操作后,我将返回结果对象,但不会添加链接。另一方面,如果我写

console.log(result.docs[1].links);

正确显示对象。

有什么想法吗?

由于

2 个答案:

答案 0 :(得分:0)

所以,试试这段代码:

for each (var a in result.docs){
    a.links = { //put your data
    };
}

答案 1 :(得分:0)

您可能正在使用mongoose Document实例而不是普通对象,在这种情况下,您可以使用toObject方法获取普通对象,因此实现可能是:

var objs = [];

for(var a in result.docs) {
   var obj = result.docs[a].toObject();
   obj.links = {
        "test":'test',
        "test": 'test', 
        "test": 'test' 
    };       
   objs.push(obj);
}

// Do something with objs

toObject Documentation