我对javascript很陌生,我正在尝试将函数表达式理解为其他函数调用的参数。
以下是使用猫鼬进行搜索的一个示例:
app.get('/auth/:id', (req, res) => {
var db = req.db;
User.findById(req.params.id, function(err, user){
if (err){
res.send(err)
}
res.send({
success: true
})
})
})
我了解到function(err,user){...}
内的User.findById()
是一个函数表达式,如果User.findById()
返回值,它将为变量user
赋值,以及(如果)错误消息发送到err
。
让我感到困惑的部分是,如果以这种方式User.findById(param_1,param_2,...)
使用findById函数,那么err
和user
如何获得其值?
答案 0 :(得分:0)
原来我的问题是关于javascript中的回调的。这是有关该主题的非常好的帖子:https://codeburst.io/javascript-what-the-heck-is-a-callback-aba4da2deced