Учитывая сценарий, в котором я работаю над формой, и у меня есть этот объект проверки
const errors = {
username: ['minLength', Promise<string>, Promise<string>],
password: [Promise<string>, Promise<string>]
}
// I need to convert the object to below
const errors = {
username: ['minLength', string, string],
password: [string, string]
}
Все обещания будут выполнены в будущем, поэтому я натолкнулся на эту идею:
;(async function () {
for (const key in errors) {
if (errors.hasOwnProperty(key)) {
errors[key] = (await Promise.all(errors[key])).filter(Boolean)
}
}
callback(errors)
})()
Есть ли более функциональный способ сделать это?
// So far I know the most elegant way to map an object
// But won't work in this scenario
const newObj = Object.fromEntries(
Object.entries(obj).map(([k, v]) => [k, v * v]),
)