--- title: Array.prototype.includes() slug: Web/JavaScript/Reference/Global_Objects/Array/includes tags: - Array - JavaScript - Method - Prototype - polyfill - Довідка - Масив translation_of: Web/JavaScript/Reference/Global_Objects/Array/includes ---
Метод includes() з'ясовує, чи масив містить елемент із вказаним значенням, та вертає відповідно true або false.
{{EmbedInteractiveExample("pages/js/array-includes.html")}}
The source for this interactive example is stored in a GitHub repository. If you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and send us a pull request.
arr.includes(valueToFind[, fromIndex])
valueToFindПримітка: При порівнянні рядків та літер, includes() чутливий до регістру.
valueToFind; перша літера шукатиметься за індексом fromIndex, якщо fromIndex є позитивним значенням, або за індексом array.length + fromIndex, якщо fromIndex від'ємний (використовуючи {{interwiki("wikipedia", "Модуль_(математика)", "абсолютну величину")}} fromIndex як кількість літер з кінця масиву, де потрібно починати пошук). За замовчуванням дорівнює 0.Значення {{jsxref("Boolean")}}, яке дорівнює true, якщо значення valueToFind знайдене у масиві (або у частині масиву, якщо заданий параметр fromIndex). Всі нульові значення вважаються рівними, незалежно від знаку (тому -0 вважатиметься рівним і 0, і +0), але false не вважається тим самим, що й 0.
Примітка: Технічно кажучи, includes() використовує алгоритм sameValueZero для визначення того, чи знайдено заданий елемент.
[1, 2, 3].includes(2); // true [1, 2, 3].includes(4); // false [1, 2, 3].includes(3, 3); // false [1, 2, 3].includes(3, -1); // true [1, 2, NaN].includes(NaN); // true
fromIndex більший або дорівнює довжині масивуЯкщо fromIndex дорівнює або перевищує довжину масиву, пошук не здійснюється й завжди вертається false:
var arr = ['a', 'b', 'c'];
arr.includes('c', 3); // вертає false
arr.includes('c', 100); // вертає false
Якщо значення fromIndex від'ємне, використовується обчислений індекс для визначення позиції, з якої починати пошук valueToFind у масиві. Якщо обчислений індекс менший або дорівнює -1 * array.length, пошук здійснюється у всьому масиві.
// Довжина масиву дорівнює 3
// fromIndex дорівнює -100
// Обчислений індекс дорівнює 3 + (-100) = -97
var arr = ['a', 'b', 'c'];
arr.includes('a', -100); // true
arr.includes('b', -100); // true
arr.includes('c', -100); // true
arr.includes('a', -2); // false
includes() як загального методаРеалізація метода includes() є зумисне узагальненою. Об'єкт, на який вказує this, не обов'язково повинен належати до класу Array, тож використання includes() можна поширити на інші масивоподібні об'єкти. В наведеному нижче прикладі його застосовано до об'єкта {{jsxref("Functions/arguments", "arguments")}}:
(function() {
console.log([].includes.call(arguments, 'a')); // виводить true
console.log([].includes.call(arguments, 'd')); // виводить false
})('a','b','c');
Будь ласка, не додавайте поліфіли у довідкові статті. Більше інформації дивіться у дискусії https://discourse.mozilla.org/t/mdn-rfc-001-mdn-wiki-pages-shouldnt-be-a-distributor-of-polyfills/24500
| Специфікація | Статус | Коментар |
|---|---|---|
| {{SpecName('ESDraft', '#sec-array.prototype.includes', 'Array.prototype.includes')}} | {{Spec2('ESDraft')}} | |
| {{SpecName('ES7', '#sec-array.prototype.includes', 'Array.prototype.includes')}} | {{Spec2('ES7')}} | Початкова виознака. |
{{Compat("javascript.builtins.Array.includes")}}