Baseline Widely available
ÐеÑод includes()
ÑкземплÑÑов Array
опÑеделÑеÑ, ÑодеÑÐ¶Ð¸Ñ Ð»Ð¸ маÑÑив опÑеделенное знаÑение, возвÑаÑÐ°Ñ true
или false
.
const array1 = [1, 2, 3];
console.log(array1.includes(2));
// Expected output: true
const pets = ["cat", "dog", "bat"];
console.log(pets.includes("cat"));
// Expected output: true
console.log(pets.includes("at"));
// Expected output: false
СинÑакÑиÑ
includes(searchElement)
includes(searchElement, fromIndex)
ÐаÑамеÑÑÑ
searchElement
ÐÑовеÑÑемое знаÑение.
fromIndex
ÐеобÑзаÑелÑнÑй
ÐндекÑ, Ñ ÐºÐ¾ÑоÑого наÑинаÑÑ Ð¿Ð¾Ð¸Ñк. ÐаÑинаеÑÑÑ Ñ Ð½ÑÐ»Ñ Ð¸ пÑеобÑазÑеÑÑÑ Ð² Ñелое ÑиÑло.
-array.length <= fromIndex < 0
, Ñо бÑÐ´ÐµÑ Ð¿Ñименено знаÑение fromIndex + array.length
. Ðднако в ÑÑом ÑлÑÑае поиÑк бÑÐ´ÐµÑ Ð¿ÑоизводиÑÑÑ Ñ Ð½Ð°Ñала маÑÑива.fromIndex < -array.length
или fromIndex
не Ñказан, Ñо иÑполÑзÑеÑÑÑ Ð·Ð½Ð°Ñение 0
, Ñо еÑÑÑ Ð¿ÑоизводиÑÑÑ Ð¿Ð¾Ð¸Ñк по вÑÐµÐ¼Ñ Ð¼Ð°ÑÑивÑ.fromIndex >= array.length
, Ñо поиÑк не пÑоизводиÑÑÑ Ð¸ возвÑаÑаеÑÑÑ false
.ÐогиÑеÑкое знаÑение, true
еÑли знаÑение searchElement
найдено в маÑÑиве (или ÑаÑÑи маÑÑива, еÑли Ñказан паÑамеÑÑ fromIndex
).
ÐеÑод includes()
ÑÑÐ°Ð²Ð½Ð¸Ð²Ð°ÐµÑ searchElement
Ñ ÑлеменÑами маÑÑива иÑполÑзÑÑ Ð°Ð»Ð³Ð¾ÑиÑм ÑÑÐ°Ð²Ð½ÐµÐ½Ð¸Ñ SameValueZero. ÐÑе нÑлевÑе знаÑÐµÐ½Ð¸Ñ ÑÑиÑаÑÑÑÑ ÑавнÑми, незавиÑимо Ð¾Ñ Ð·Ð½Ð°ÐºÐ° (Ñо еÑÑÑ -0
и 0
ÑавнÑ), но false
не Ñавно 0
. ÐнаÑение NaN
доÑÑÑпно Ð´Ð»Ñ Ð¿Ð¾Ð¸Ñка.
ÐÑи иÑполÑзовании в ÑазÑеженнÑÑ
маÑÑиваÑ
, меÑод includes()
меÑод ÑÑиÑаеÑ, ÑÑо пÑÑÑÑе позиÑии имеÑÑ Ð·Ð½Ð°Ñение undefined
.
ÐеÑод includes()
ÑвлÑеÑÑÑ ÑнивеÑÑалÑнÑм, Ñо еÑÑÑ Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ð²Ñзван не ÑолÑко Ñ Ð¼Ð°ÑÑивов, но и Ñ Ð¼Ð°ÑÑивоподобнÑÑ
обÑекÑов (Ñ ÐºÐ¾ÑоÑÑÑ
знаÑение this
Ð¸Ð¼ÐµÐµÑ ÑвойÑÑво length
и ÑвойÑÑва Ñ ÑелоÑиÑленнÑми клÑÑами).
includes()
[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
["1", "2", "3"].includes(3); // false
fromIndex
болÑÑе или Ñавен длине маÑÑива
ÐÑли fromIndex
болÑÑе или Ñавен длине маÑÑива, Ñо возвÑаÑаеÑÑÑ false
. ÐÑи ÑÑом поиÑк не пÑоизводиÑÑÑ.
const arr = ["a", "b", "c"];
arr.includes("c", 3); // false
arr.includes("c", 100); // false
ÐÑÑиÑленнÑй Ð¸Ð½Ð´ÐµÐºÑ Ð¼ÐµÐ½ÑÑе нÑÐ»Ñ 0
ÐÑли fromIndex
оÑÑиÑаÑелÑнÑй, Ñо вÑÑиÑлÑеÑÑÑ Ð¸Ð½Ð´ÐµÐºÑ, наÑÐ¸Ð½Ð°Ñ Ñ ÐºÐ¾ÑоÑого бÑÐ´ÐµÑ Ð¿ÑоизводиÑÑÑÑ Ð¿Ð¾Ð¸Ñк ÑлеменÑа searchElement
. ÐÑли вÑÑиÑленнÑй Ð¸Ð½Ð´ÐµÐºÑ Ð¼ÐµÐ½ÑÑе нÑлÑ, Ñо поиÑк бÑÐ´ÐµÑ Ð¿ÑоизводиÑÑÑÑ Ð²Ð¾ вÑÑм маÑÑиве.
// длина маÑÑива Ñавна 3
// fromIndex Ñавен -100
// вÑÑиÑленнÑй Ð¸Ð½Ð´ÐµÐºÑ Ñавен 3 + (-100) = -97
const 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()
в ÑазÑеженнÑÑ
маÑÑиваÑ
Ðожно пÑоизводиÑÑ Ð¿Ð¾Ð¸Ñк undefined
в ÑазÑеженном маÑÑиве и полÑÑаÑÑ true
.
console.log([1, , 3].includes(undefined)); // true
ÐÑзов includes()
Ñ Ð¾Ð±ÑекÑов, не ÑвлÑÑÑиÑ
ÑÑ Ð¼Ð°ÑÑивами
ÐеÑод include()
ÑÑиÑÑÐ²Ð°ÐµÑ ÑвойÑÑво length
Ñ this
, а заÑем обÑаÑаеÑÑÑ Ðº ÐºÐ°Ð¶Ð´Ð¾Ð¼Ñ ÑвойÑÑвÑ, клÑÑ ÐºÐ¾ÑоÑого пÑедÑÑавлÑÐµÑ Ñобой неоÑÑиÑаÑелÑное Ñелое ÑиÑло, менÑÑее length
.
const arrayLike = {
length: 3,
0: 2,
1: 3,
2: 4,
3: 1, // includes() не бÑÐ´ÐµÑ Ð¾Ð±ÑаÑаÑÑÑÑ Ðº ÑÑÐ¾Ð¼Ñ ÑлеменÑÑ, поÑÐ¾Ð¼Ñ ÑÑо ÑвойÑÑво length Ñавно 3
};
console.log(Array.prototype.includes.call(arrayLike, 2));
// true
console.log(Array.prototype.includes.call(arrayLike, 1));
// false
СпеÑиÑикаÑии СовмеÑÑимоÑÑÑ Ñ Ð±ÑаÑзеÑами СмоÑÑиÑе Ñакже
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4