Задать вопрос
@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}
  • Вопрос задан
  • 256 просмотров
Подписаться 1 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 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 } 
];

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

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

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