有没有其他方法可以从节点js调用存储在mongodb中的javascript函数

时间:2013-06-07 06:14:56

标签: javascript node.js mongodb eval

还有其他方法可以从除db.eval()以外的node.js调用存储在MongoDB中的JavaScript函数吗?

尝试db.eval(),因为它降低了我的服务器性能,我必须使用其他一些方法来调用JavaScript函数

3 个答案:

答案 0 :(得分:0)

尝试包含jQuery并将jQuery.getScript效果与eval()

进行比较

答案 1 :(得分:0)

使用新函数避免使用eval();

var mydbfunction=new Function('here the function string');
mydbfunction();

直接执行该功能

(new Function('here the function string'))()

答案 2 :(得分:0)

逻辑上的答案是否定的,如果您希望从MongoDB中进行评估,则不是。这是由于在MongoDB的JavaScript引擎实现中实际扩展和操作eval的方式。

相反,你应该避免eval。很可能您已经使用这些存储的JavaScript函数编写应用程序,就好像它们是存储过程一样。事实并非如此,它们不是存储过程,如果可能的话,绝对不应该使用应用程序端。

据说存储JavaScript对使用公共代码的Map Reduce非常有用。您只需将已保存的代码包含在system.js集合中,然后将其作为一个好的工作。