@XiNull

Как запушить объект в массив?

Написал такой кусок кода, но что-то не то.
let users = [];
...
users[socket] = {}; // Создаем новый объект
users[socket].id = results[0].id; // ID пользователя из бд
users[socket].nickname = results[0].nickname;
users.push(users[socket]); // Пушим, надо сохранить сокет как ключ, ибо по нему идёт перебор пользователей
...

Как правильно запушить объект в массив?
  • Вопрос задан
  • 1954 просмотра
Решения вопроса 1
Xuxicheta
@Xuxicheta
инженер
const users = [];
// ...
const server = net.createServer((socket) => {
    const newUser = {};
    newUser.socket = socket;
    newUser.id = results[0].id; // ID пользователя из бд -- не знаю уж где вы его возьмете
    newUser.nickname = results[0].nickname;
    users.push(newUser);
    c.on('data', function(data) {
});


А вы почему то сначала массив объявляете, потом ему в свойства записываете айди. Ошибки не будет, но это будет уже не массив.
Причем в качестве имени свойства указываете ссылку на объект, это же не WeakMap.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@DLeo13
Массив это не объект. Объект можно запустить в массив, не наоборот.
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы
22 нояб. 2024, в 06:06
1500 руб./в час
22 нояб. 2024, в 06:04
1 руб./за проект
22 нояб. 2024, в 03:54
1500 руб./за проект