Javascript 如何在Node.js/Express/MongoDB应用程序中将标记转换为HTML

Javascript 如何在Node.js/Express/MongoDB应用程序中将标记转换为HTML,javascript,node.js,Javascript,Node.js,我有这段代码,它工作得很好;然而,这个设计好吗?我担心res.send()在for循环有机会完成之前执行 app.get('/api/ideas', function(req, res) { var query = Idea.find({ status: 'published' }, 'title slug status body pub_date').sort({pub_date: -1}); query.exec(function(err, ideas){

我有这段代码,它工作得很好;然而,这个设计好吗?我担心res.send()在for循环有机会完成之前执行

  app.get('/api/ideas', function(req, res) {
    var query = Idea.find({ status: 'published' }, 'title slug status body pub_date').sort({pub_date: -1});

    query.exec(function(err, ideas){
      for(i in ideas) {
        ideas[i].body = markdown.toHTML(ideas[i].body);
      }
      res.send(ideas);
    });
  });

我不确定toHTML方法是什么,但您需要看看它是同步调用还是异步调用。如果它是同步的,那么您的设计是完美的,res.send将只在for循环完成后执行。如果它是异步的,那么这将不起作用,send将在for循环完成之前执行。

啊,它是异步的,所以我的代码应该可以运行了。此外,如果您有更好的标题的想法,将不胜感激。恐怕这个标题对未来潜在读者的承诺会比它所保证的更多。