Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/426.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/41.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 高阶函数_Javascript_Node.js_Sanitization_Serverside Javascript_High Order Component - Fatal编程技术网

Javascript 高阶函数

Javascript 高阶函数,javascript,node.js,sanitization,serverside-javascript,high-order-component,Javascript,Node.js,Sanitization,Serverside Javascript,High Order Component,我在创建高阶函数来修剪空白时遇到问题 const{trim}=require('validator')) 常量whiteSpace2=()=>(请求:任意)=>{ Object.key(请求主体).forEach((key)=>{ 如果(请求正文[键]=='string')请求正文[键]=修剪(请求正文[键]) }) } fastfy.post('/login',(请求:任意,回复:任意)=>{ 空格2() 控制台日志(请求正文) 返回资源代码(403).send('error') }) 函数

我在创建高阶函数来修剪空白时遇到问题

const{trim}=require('validator'))
常量whiteSpace2=()=>(请求:任意)=>{
Object.key(请求主体).forEach((key)=>{
如果(请求正文[键]=='string')请求正文[键]=修剪(请求正文[键])
})
}
fastfy.post('/login',(请求:任意,回复:任意)=>{
空格2()
控制台日志(请求正文)
返回资源代码(403).send('error')
})

函数永远不会执行

const trimmer=whiteSpace2();微调器(req);控制台日志(请求主体)
您应该将
req
作为参数传递给
whiteSpace2
函数。@hackape我知道我可以这样做,但我不想发送参数,使用
express
我可以设置如下中间件:sanitize(){return function(req,res,next){}那么,为什么不将其设置为中间件呢?您已经将
whiteSpace2
定义为一个函数,在调用时返回另一个需要在调用时传递的函数
req
。因此,当您执行
whiteSpace2()
时,所做的只是返回另一个函数-在调用另一个函数并将
req
传递给它之前,不会进行任何实际处理。因此,您现在对
whiteSpace2()
的调用没有任何作用。此外,似乎没有任何理由这样写。