@svk44

Как работает метод Object.keys?

Знаю, что при методе Object.keys(obj) мы получаем массив со значением ключей.
Есть объект:
const obj = {
    "id": 2,
    "first_name": "Zuzana",
    "last_name": "Jirus",
    "email": "zjirus1@reverbnation.com",
    "gender": null,
    "ip_address": "221.81.92.35"
}

Есть метод reduce, при помощи которого получаем свойства у которых значения ключа тип: не string:
const result = Object.keys(obj).reduce(
    (acc,rec)=>{
        if (typeof obj[rec] !== 'string'){
            return {...acc, [rec] : obj[rec]}
        }
        return acc
    }, {}
)

console.log(result)          //{id: 2, gender: null}

Глупый вопрос, но нужен для понимания: если методом reduce мы обрабатываем только массив названия ключей, то откуда внутри метода значения этих ключей?
  • Вопрос задан
  • 102 просмотра
Решения вопроса 1
Maksclub
@Maksclub
maksfedorov.ru
если методом reduce мы обрабатываем только массив названия ключей, то откуда внутри метода значения этих ключей?

Вы итерируетесь по массиву с ключами (которые достали через Object.keys(obj) у объекта), но доступ к переменной obj то у вас остается и переменная никуда не делась и не изменилась, не пропала :), вот вы с ней и работаете
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы