Предположим, что this
не требуется ни в одной из этих функций. Это работает
const add = (x, y) => x + y
add.foo = () => 4
console.log(add(1, 1))
console.log(add.foo())
и я думаю, что это очень полезно для упаковки обработчиков запросов API и вызовов функций, например (при условии express.js):
const getPost = async (postId) => db.get(postId) // assuming db.get will get the post
getPost.handler = async (req, res, next) => {
try {
const { postId } = req.body
res.send(await getPost({ postId }))
} catch (err) {
next(err)
}
}
Затем я могу использовать app.post('/get-post', getPost.handler)
и все еще иметь хорошо тестируемую функцию getPost
.
Мне кажется, это хорошо, мне просто интересно, является ли это принятой практикой или есть что-то, о чем я не думаю.