petushok55
@petushok55
Обучаюсь на практике.

Как решить (производительнее, грамотнее) эту маленькую проблемку?

Есть БД (postgreSQL)
В ней таблица users с полями id,score
Допустим беру 100 юзеров как массив, чтобы отправить их клиенту.
const users= await pool.query(`SELECT id,score FROM users WHERE score > 0 ORDER BY score DESC LIMIT 100`)
               send(JSON.stringify({
                    json_users: JSON.stringify(users.rows)
                }))

Но вот мне нужно в json к каждому юзеру добавить некоторое числовое значение в зависимости от их score.
То есть вот так для одного юзера я бы взял это значение через функцию:
mySecretFunc(user.score)

Коротко: нужно в массив с данными из БД добавить ещё один параметр.
Уф. Не умею я ещё грамотно излагать мысли, но думаю вы понимаете меня. У меня самого есть одна идейка через цикл пересобрать массив, но думаю тут лучше подскажут
  • Вопрос задан
  • 83 просмотра
Решения вопроса 1
petushok55
@petushok55 Автор вопроса
Обучаюсь на практике.
Я решил это так:
const users= await pool.query(`SELECT id,score FROM users WHERE score > 0 ORDER BY score DESC LIMIT 100`)
users.rows.forEach(user=> {
    user.new_param= myMagicFunc(user.score)
})
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
vabka
@vabka
Токсичный шарпист
Попробуй использовать для этого функцию map
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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