Кратко
СкопированоМетод is сравнивает текущую коллекцию с другой и возвращает true, если текущая коллекция включает в себя все элементы другой коллекции, и false — если нет.
Пример
СкопированоУ Софии и Надежды большие личные библиотеки. София хочет доказать, что её коллекция включает все романы Набокова, которые есть в коллекции Надежды. В этом ей поможет метод is.
У нас есть два массива строк. Определим, входят ли все элементы второго массива также в первый. Для решения задачи создадим Set из массивов и сравним их, используя метод is:
const booksOfSonya = [ 'Дар', 'Подвиг', 'Защита Лужина', 'Отчаяние' ]const booksOfNadya = [ 'Подвиг', 'Защита Лужина', 'Дар' ]const set1 = new Set(booksOfSonya)const set2 = new Set(booksOfNadya)console.log(set1.isSupersetOf(set2))// trueconsole.log(set2.isSupersetOf(set1))// false
const booksOfSonya = [ 'Дар', 'Подвиг', 'Защита Лужина', 'Отчаяние' ]
const booksOfNadya = [ 'Подвиг', 'Защита Лужина', 'Дар' ]
const set1 = new Set(booksOfSonya)
const set2 = new Set(booksOfNadya)
console.log(set1.isSupersetOf(set2))
// true
console.log(set2.isSupersetOf(set1))
// false
Как пишется
СкопированоМетод is принимает один обязательный аргумент — объект, который содержит коллекцию для сравнения. Если аргумент не указан, будет брошено исключение Type.
Аргументом может быть как Set-объект, так и Set-подобный объект, например, Map.
Метод is возвращает булевое значение как результат сравнения коллекций.
Как понять
СкопированоСравнение коллекций — часто встречающаяся задача. Метод is упрощает её решение и избавляет от необходимости писать код обхода и сравнения.
Не путайте метод is с методом is, который решает обратную задачу и проверяет, что все элементы текущей коллекции содержатся в другой. Поддержка is в основных браузерах и в Node.js появилась в 2024 году. Если попробуете использовать метод в более ранних версиях, получите ошибку.
- Chrome 122, поддерживается
- Edge 122, поддерживается
- Firefox 127, поддерживается
- Safari 17, поддерживается