Javascript return如何获取此函数中的参数
因此,我在网上了解如何将附加参数传递给中间件,这时我偶然发现了以下问题: 这里正确的答案回答了这个问题Javascript return如何获取此函数中的参数,javascript,node.js,Javascript,Node.js,因此,我在网上了解如何将附加参数传递给中间件,这时我偶然发现了以下问题: 这里正确的答案回答了这个问题 function HasRole(role) { return function(req, res, next) { if (role !== req.user.role) res.redirect(...); else next(); } } 下面的路线 ` 另外,我知道express将req、res、next传递给中间件 现在,我试图理解的是,当我们只将HasRo
function HasRole(role) {
return function(req, res, next) {
if (role !== req.user.role) res.redirect(...);
else next();
}
}
下面的路线
`
另外,我知道express将req、res、next
传递给中间件
现在,我试图理解的是,当我们只将HasRole('Admin')
传递给函数时,返回函数如何具有不同的参数,以及它如何接收这些参数。在技术方面,这是什么,所以我可能可以在谷歌上找到更多关于它的信息
<强> Update:考虑此无节点示例,我具有以下函数
function foo(a,b,c) {
return function (d, e, f) {
}
}
如何传递d,e,f
以在上述函数中返回?HasRole('Admin')
返回函数
该函数立即作为第二个参数传递给app.get()
(另一个函数作为第三个参数传递)
调用这些函数时,它们被传递参数
调用它们的代码没有显示在您的问题中(因为您没有编写app.get()
,它是Express的一部分,所以您需要深入研究Express的源代码才能看到它)
JS中的函数是第一类对象。它们可以像任何其他值一样传递
函数给我一个函数(){
返回函数(a、b、c){
log({a,b,c});
}
}
函数调用带有参数的函数(函数){
a_函数(1,2,3);
}
常数x=给我一个函数();
用参数(x)调用函数代码>HasRole('Admin')
返回一个函数
该函数立即作为第二个参数传递给app.get()
(另一个函数作为第三个参数传递)
调用这些函数时,它们被传递参数
调用它们的代码没有显示在您的问题中(因为您没有编写app.get()
,它是Express的一部分,所以您需要深入研究Express的源代码才能看到它)
JS中的函数是第一类对象。它们可以像任何其他值一样传递
函数给我一个函数(){
返回函数(a、b、c){
log({a,b,c});
}
}
函数调用带有参数的函数(函数){
a_函数(1,2,3);
}
常数x=给我一个函数();
用参数(x)调用函数当调用它的人调用它时,它接收参数。foo
函数是一个返回另一个函数(以d、e和f为参数的函数)。因此,foo的返回值可以再次用作常规函数foo(1,2,3)(4,5,6)
由于中间件,您将在中间件中找到所有东西,如req、body,以及从客户端传递的所有东西。当调用它的人调用它时,它接收参数。foo
函数是返回另一个函数的函数因此,foo的返回值可以再次用作常规函数foo(1,2,3)(4,5,6)
由于中间件的存在,您可以在中间件中找到所有东西,如req、body,以及从客户端传递的所有东西。
function foo(a,b,c) {
return function (d, e, f) {
}
}