Я немного запутался с возвращаемым по умолчанию значением лямбды в node.js. Я нашел эту ссылку "Функции стрелок" :
Функции стрелок могут иметь либо «краткое тело», либо обычный «блок».
тело».
В кратком теле указано только выражение, которое становится
неявное возвращаемое значение. В теле блока вы должны использовать явное
возврат заявления.
var func = x => x * x;
// concise body syntax, implied "return"
var func = (x, y) => { return x + y; };
// with block body, explicit "return" needed
Это довольно ясно, но потом я наткнулся на этот фрагмент кода Express, который я тестировал, который возвращает последнее выражение по умолчанию без необходимости использования «return»:
const express = require('express');
const app = express();
app.use('/api/posts', (req, res, next) => {
const posts = [
{
id: 'sdfj234j654j',
title: 'First server-side post',
content: 'This is comming from the server'
},
{
id: '9054jk4ju59u90o',
title: 'Second server-side post',
content: 'This is comming from the server!'
}
];
// this is returned by default and does not require "return "
res.status(200).json({
message: 'Posts fetched succesfully!',
posts: posts
});
});
Так что же мне нужно, чтобы использовать выражение return в лямбдах, когда я использую кавычки блока, чтобы определить их или нет? или есть исключение, о котором я не знаю?