JS - 从另一个数组中的数组中删除值

时间:2016-04-14 20:15:03

标签: javascript arrays

问题听起来很简单,但我无法弄明白......

实施例: 我有 -

users[ userid1[u1XsessionId1, u1XsessionId2, u1XsessionId3] userid2[u2XsessionId1, u2XsessionId2, u2XsessionId3] ]

两个用户都有3个活动会话。

" userid1"将断开他的第二次会议,所以我想删除" u1XsessionId2"

结束
users[ userid1[u1XsessionId1, u1XsessionId3] userid2[u2XsessionId1, u2XsessionId2, u2XsessionId3] ]

当" userid1"断开他的会话,我只会收到他的会话ID而不是用户ID,但我有一个包含所有用户ID的数组,所以我可能需要遍历所有用户及其所有会话才能找到" u1XsessionId2" 。所有会话和用户都有自己的唯一ID。

1 个答案:

答案 0 :(得分:0)

var users = [
    [u1XsessionId1, u1XsessionId2, u1XsessionId3],
    [u2XsessionId1, u2XsessionId2, u2XsessionId3]
];

users[0].splice(1, 1); // removes u1XsessionId2 from first user

如果您有会话ID值,但不知道索引(例如,它可能是会话ID 1,2或3但需要知道要删除哪一个),那么您可以获取它并将其删除: -

var index = users[0].indexOf(u1XsessionId2);

if (index > -1) { // -1 means it wouldn't exist
    users[0].splice(index, 1); // 1 second arg means remove 1 item
}

你可以read more about .splice() here