在节点js中获取TypeError

时间:2018-02-22 22:56:10

标签: javascript node.js

我是节点js的新手。我在使用.get函数时遇到了一个类型错误。错误是

  

TypeError:item.get不是函数

代码 -

query.lean().exec(function (err, data)
{
  JSON.stringify(data);
  callback(null,data,count);
});

function(data,count,callback)
{
  //...some code
  callback(null,[count,data]);
}

function(docs, callback){
  console.log(docs[1]);

  async.each(docs[1],function(item,cb) {
    if (typeof(item.video.path)!="undefined") {
      item.players.cover = config.general+ item.video.path;
    }
  });
}

我做了console.log(docs[1])并且video.path存在于json对象中。在使用lean()之前,这个set和get工作但不是现在。

非常感谢任何帮助。提前谢谢。

1 个答案:

答案 0 :(得分:0)

如果item是从JSON反序列化的对象,那么它就没有任何方法或函数。

我怀疑你只想在对象上设置属性。像

这样的东西
if (typeof item.video.path !== 'undefined') {
  // ensure item.players is an object first
  item.players = item.players || {}

  // now set the value
  item.players.cover = config.general + item.video.path
}