Здравствуйте, как правильно обыграть такую ситуацию:
пишу асинхронную функцию проверки(валидации) входящего JSON и не пойму как
правильно вернуть promise, т.е. несколько вариантов:
1. что-то типа
return new Promise((resolve, reject) => {
...
if(valid) { resolve(...) } else { reject(errors) }
})
и потом ловить через await try catch или .then() .catch()
или обойтись без reject
2.
return new Promise((resolve) => {
...
if(valid) { resolve() } else { resolve(errors) }
})
и ловить так
const error = await ValidationFunc()
if(error){...} else {...}
Т.е. оба варианта работают одинаково верно, но все-таки пытаюсь понять, как будет семантически правильнее и при каких ситуациях использовать тот или иной вариант