Переберите собственные строковые ключи и присвойте каждому развёрнутую строку ключа. В данном обычном объекте достаточно Object.keys.
Заполнение свойств объекта их обратными строками
Переберите собственные строковые ключи и присвойте каждому развёрнутую строку ключа. В данном обычном объекте достаточно Object.keys.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Условие
Дан объект, в котором все свойства имеют значение undefined. Необходимо пройтись по всем свойствам объекта и установить каждому свойству значение, равное строковому представлению самого ключа, записанному в обратном порядке.
Пример исходного объекта:
const data = { abc: undefined, xyz: undefined, hello: undefined };
После обработки объект должен выглядеть так:
{ abc: 'cba', xyz: 'zyx', hello: 'olleh' }
Ответ
Переберите собственные строковые ключи и присвойте каждому развёрнутую строку ключа. В данном обычном объекте достаточно Object.keys.
for (const key of Object.keys(data)) {
data[key] = [...key].reverse().join('');
}
Получится {abc:'cba', xyz:'zyx', hello:'olleh'}. Код меняет исходный объект и не использует его прежние значения. Object.keys не включает Symbol и неперечисляемые свойства; если под «всеми» понимаются и они, используйте Reflect.ownKeys и отдельно определите способ текстового представления Symbol. Разворот через spread идёт по кодовым точкам, не по сложным графемам.