Issue
I have been refactoring some legacy code and found the following example:
// inside other function
const isTriggerValid = await (async () => {
try {
const triggers = await db.any(getTriggerBeforeBook, { paramId });
if (!triggers || triggers.length === 0) {
return false;
}
return true;
} catch (e) {
logger.error(e);
return false;
}
})();
and I'd like to ask, what is the point between it, and the code below?
const isTriggerValid = async (paramId) => {
try {
const triggers = await db.any(getTriggerBeforeBook, { paramId });
if (!triggers || triggers.length === 0) {
return false;
}
return true;
} catch {
return true;
}
}
And then invoking it with const trigger = await isTriggerValid(paramId)
?
I know absolutely for sure that this
keyword hasn't been used in it.
Solution
The main difference would be that in the old version isTriggerValid
would be the functions result and in the new one it's a function and the result would be called trigger
. Other than that both are invoking the same function.
Regarding your concern about this
. In both variants it's an arrow-function inheriting the parent-context so even if it was used it would be the same in both.
Answered By - user1882585
0 comments:
Post a Comment
Note: Only a member of this blog may post a comment.