Задать вопрос
@rovied

Почему приходит пустой массив с сервера nodejs?

Сервер
var players = [ uryBa10dquiRVP77AAAD: { id: 'uryBa10dquiRVP77AAAD', x: 200, y: 200 },
  PPF6HbYRf3dm30w1AAAE: { id: 'PPF6HbYRf3dm30w1AAAE', x: 200, y: 200 } ];

socket.broadcast.emit('updatePlayers', players);


Клиент
console.log(players);

Результат в консоле:
[]

Почему приходит пустой массив? Это какая-то особенность nodejs?

Так работает

var players = { id: 'uryBa10dquiRVP77AAAD', x: 200, y: 200 };

socket.broadcast.emit('updatePlayers', players);


Клиент
console.log(players);

Результат в консоле:
Object {id: "5bHG5dipHpSBVFilAAAB", x: 200, y: 200}
  • Вопрос задан
  • 261 просмотр
Подписаться 1 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
  • Академия Эдюсон
    Fullstack-разработчик на JavaScript + ИИ
    11 месяцев
    Далее
  • ProductStar × РБК
    Профессия: Инженер по тестированию + ИИ
    6 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 1
Staltec
@Staltec
Node.js разработчик
Вам надо определиться.

Либо так (ассоциативный массив):
var players = { 
  uryBa10dquiRVP77AAAD: { id: 'uryBa10dquiRVP77AAAD', x: 200, y: 200 },
  PPF6HbYRf3dm30w1AAAE: { id: 'PPF6HbYRf3dm30w1AAAE', x: 200, y: 200 } 
};

Либо так (массив объектов, as коллекция):
var players = [
  { id: 'uryBa10dquiRVP77AAAD', x: 200, y: 200 },
  { id: 'PPF6HbYRf3dm30w1AAAE', x: 200, y: 200 } 
];

Но ни как не то, что у вас написано.
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы