Javascript JS lambda默认返回值
我对node.js中lambdas的默认返回值有点困惑。我找到了这个链接: 箭头函数可以有“简明体”或通常的“块” 身体” 在简明体中,只指定一个表达式,它将成为 隐式返回值。在块体中,必须使用显式 返回语句 这就很清楚了,但是后来我发现了一段我测试过的Express代码,它默认返回最后一条语句,而不需要使用“return”:Javascript JS lambda默认返回值,javascript,node.js,lambda,return-value,default,Javascript,Node.js,Lambda,Return Value,Default,我对node.js中lambdas的默认返回值有点困惑。我找到了这个链接: 箭头函数可以有“简明体”或通常的“块” 身体” 在简明体中,只指定一个表达式,它将成为 隐式返回值。在块体中,必须使用显式 返回语句 这就很清楚了,但是后来我发现了一段我测试过的Express代码,它默认返回最后一条语句,而不需要使用“return”: 那么,在使用块引号定义lambdas时,我需要在lambdas上使用return语句,还是不需要?或者是否存在我不知道的异常情况?示例中的箭头函数不返回任何内容。但是,它
那么,在使用块引号定义lambdas时,我需要在lambdas上使用return语句,还是不需要?或者是否存在我不知道的异常情况?示例中的箭头函数不返回任何内容。但是,它通过调用
.json({/*…*/})
写入res
ponse,因此它有点“返回”json到客户端
一个简化的例子:
setTimeout(() => {
console.log("test");
}, 1);
上面的代码向控制台输出了一些东西,尽管arrow函数没有返回任何东西。示例中的arrow函数没有返回任何东西。但是,它通过调用
.json({/*…*/})
写入res
ponse,因此它有点“返回”json到客户端
一个简化的例子:
setTimeout(() => {
console.log("test");
}, 1);
上面的代码向控制台输出了一些东西,尽管arrow函数没有返回任何东西。我相信您标记为“默认返回”的内容实际上没有返回。该函数返回未定义的
,就像任何没有return语句的函数一样。在app.use
中,只要遇到特定的路由,就会调用函数,仅此而已res.status
仅写入网络,不返回任何值。我相信您标记为“默认返回”的内容实际上不会返回。该函数返回未定义的
,就像任何没有return语句的函数一样。在app.use
中,只要遇到特定的路由,就会调用函数,仅此而已res.status
仅写入网络,不返回任何值。并非所有JS函数都返回值。但是,一旦您确实想要返回一个值,那么表达式体箭头函数与块体箭头函数之间的区别就更加明显了返回到哪里?并非所有JS函数都返回一个值。但是,一旦您确实想要返回一个值,那么表达式体箭头函数与块体箭头函数之间的差异就更明显了。返回到哪里?
setTimeout(() => {
console.log("test");
}, 1);