Значение доступно через data[key]
, что вы делаете правильно. Я думаю, что ошибка, с которой вы сталкиваетесь, это не ошибка JavaScript, а ошибка компилятора TypeScript. По сути, поскольку data
не индексируется с помощью переменной string
, вам необходимо сообщить компилятору, что key
на самом деле является ключом data
объекта, а не просто string
:
Object.keys(data).map(key => {
console.log(`key: ${key}`, '|', `value: ${data[key as keyof typeof data]}`); // How do you get the value?
});
См. Пример проверки концепции .
Если вы посмотрите на аргумент key
, TypeScript предполагает, что это просто string
вместо свойства data
объект.