Как можно сравнить два множества (Set
) в JavaScript?
let a = new Set([1, 2, 3]);
let b = new Set([1, 3, 2]);
let equal = ???
(два множества являются равными, если они состоят из одних и тех же элементов)
Самый простой вариант воспользоваться методом Array.from
const a = new Set([5, 1, 2, 3]);
const b = new Set([1, 3, 2, 5]);
let equal = isEqual(a, b);
function isEqual(a, b) {
const a1 = setToArray(a),
a2 = setToArray(b);
return a1.length==a2.length && a1.every(function(v,i) { return v === a2[i]});
}
function setToArray(setInstance) {
return Array.from(setInstance).sort((a ,b) => b - a);
}
ссылка на codepen прилагается - https://codepen.io/anon/pen/WXBqXP?editors=0011 а вообще, на англоязычном stackoverflow есть подобная статья https://stackoverflow.com/questions/7837456/how-to-compare-arrays-in-javascript
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Uncaught TypeError: Cannot set property 'backgroundImage' of undefined
Как разделить это на файлы , если вообще не понятно ничего ?
Как отследить изменение стора в Redux? В интеренете нашел что используется метод componentWillReceivePropsЯ пытаюсь в нем вызвать метод который подгружает...