Sobes.tech
Junior — Senior
58

Усовершенствование типизации функции, формирующей массив значений из объекта

Companies where asked:

Альфа-БанкАльфа-Банк
Task condition

Требуется доработать типизацию функции, которая собирает массив значений из переданного объекта по набору ключей. Функция должна корректно работать, даже если среди запрашиваемых ключей присутствуют отсутствующие в объекте, и не допускать ошибок компиляции в TypeScript.

const arrayFromkeys = (obj: Record<string, any>, keys: string[]) => { 
  const out = [];
  for (const key of keys) (
    out.push(obj[key]);
  )
  return out;
}
const obj = {
  a: 1, 
  b: 'B',
  'c d': null,
}

// Ошибка
arrayFronkeys(obj, ['z']);