Да, вам осталось проверить их все. Я не думаю, что это будет проблемой, так как ваши чаты, вероятно, ниже 100k или около того.
Поскольку я не знаю, какую структуру данных вы используете, я просто пытаюсь сделать это на основе вашего изображения, и вы должны адаптироваться к вашей структуре.
// assuming a reasonable structure
let chats = [{name: "chat1", "1": true, "5": true}, {name: "chat2", "1": true, "2": true}];
function hasChat(chats, uid1, uid2) {
return chats.find((chat) => {
let uids = Object.keys(chat);
return uids.indexOf(uid1) !== -1 && uids.indexOf(uid2) !== -1;
}) !== undefined;
}
console.log(hasChat(chats, "1", "2"));
Это можно сделать более производительным и более читабельным с помощью библиотеки.