Добавить / изменить значения в Object Javascript - PullRequest
0 голосов
/ 25 апреля 2018

У меня есть объект с именем клиенты.

var clients = {"username" : test, "socket": asdasdkje3sf};

Но я хочу добавить еще несколько клиентов.Если я добавлю клиента следующим образом:

clients = {
  "username" : username,
  "socket": socket.id
};

Он перезаписывается каждый раз, когда я добавляю новое значение.Я пробовал это следующим образом:

clients += {
  "username" : username,
  "socket": socket.id
};

Если я делаю console.log(clients), это похоже на работу, но возвращает [object][object][object][object].

Как я могу прочитать объекты?И это лучший способ сделать это?

Заранее спасибо!

Ответы [ 4 ]

0 голосов
/ 25 апреля 2018

Для чтения или отображения и использования объектов,

console.log(clients.username + "|" + clients.socket)

Добавьте к ответам выше, чтобы добавить объекты в массив, вы также можете использовать concat вместо push, если вы планируете объединить более двух массивов.Разница в том, что «push» обновляет тот же массив, «контакт» сливается и возвращает новый массив

0 голосов
/ 25 апреля 2018

Возможно, вам нужен массив объектов (клиентов).

var clients = [{"username" : test, "socket": asdasdkje3sf}];

Таким образом, вы можете легко подключить к нему новых клиентов.

var newClient = {"username": "another name", "socket": "foobar"};
clients.push(newClient);

push() - это метод массива , предоставляемый JavaScript .

0 голосов
/ 25 апреля 2018

Вам нужно использовать структуру данных массива, где вы можете выдвинуть каждый объект для clients.То, что вы делаете, неверно, так как он объединяет объект с другим объектом, что приводит к неверному объекту JSON.

var clients = [];
clients.push({
     "username" : 'username1',
     "socket": 'socket.id1'
});


clients.push({
  "username" : 'username2',
  "socket": 'socket.id2'
});

console.log(clients);
0 голосов
/ 25 апреля 2018

Как я могу читать объекты?И это лучший подход для этого?

Использовать массив вместо объекта.

var clients = [{"username" : test, "socket": asdasdkje3sf}];

Вместо добавления с помощью ++, используйте push

clients.push({
  "username" : username,
  "socket": socket.id
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...