我正在使用socket.io v1.3.5来创建聊天室,现在我有了一个代码:
console.log(socket.rooms);
得到输出:
[ 'pBtWJZqN23xAJw0sAAAE', 'test' ]
[ 'GPnwtq3gi9t1RZcCAAAD', 'Lobby' ]
[ 'n7tTlvoH1M7foT3ZAAAC', 'Lobby' ]
我在2个房间里有3个socket.id' lobby'并且'测试'。我想获得一系列像这样的房间名称:
var listroom = ['Lobby','test']
请阅读。
答案 0 :(得分:4)
这不是一个正确的回应:
[ 'pBtWJZqN23xAJw0sAAAE', 'test' ]
[ 'GPnwtq3gi9t1RZcCAAAD', 'Lobby' ]
[ 'n7tTlvoH1M7foT3ZAAAC', 'Lobby' ]
让我猜它实际上是:
[['pBtWJZqN23xAJw0sAAAE', 'test'], ['GPnwtq3gi9t1RZcCAAAD', 'Lobby'], ['n7tTlvoH1M7foT3ZAAAC', 'Lobby']]
如果不是,请纠正我。
只需遍历数组并收集值:
var values = [];
for (var i = 0; i < socket.rooms.length; i++)
{
var room = socket.rooms[i];
if (values.indexOf(room[1]) === -1) values.push(room[1]);
}
console.log(values);
工作JS小提琴演示:http://jsfiddle.net/bcbctaLd/