JSFiddle - React, Tailwind, and code Playground
JavaScript
var arr1 = [1, 'a', 2, 'b', 3];
var arr2 = [1, 2, 3];
var isSuperset = arr2.every(function (val) {
var numIn1 = arr1.filter(function(el) { return el === val; }).length;
var numIn2 = arr2.filter(function(el) { return el === val; }).length;
return numIn1 === numIn2;
});
alert("Should be true -> " + isSuperset);
arr1 = [1, 'a', 2, 'b', 3, 3];
arr2 = [1, 2, 3];
isSuperset = arr2.every(function (val) {
var numIn1 = arr1.filter(function(el) { return el === val; }).length;
var numIn2 = arr2.filter(function(el) { return el === val; }).length;
return numIn1 === numIn2;
});
alert("Should be false -> " + isSuperset);
arr1 = [1, 'a', 2, 'b', 3];
arr2 = [1, 2, 3, 3];
isSuperset = arr2.every(function (val) {
var numIn1 = arr1.filter(function(el) { return el === val; }).length;
var numIn2 = arr2.filter(function(el) { return el === val; }).length;
return numIn1 === numIn2;
});
alert("Should be false -> " + isSuperset);