→mdn
その Array の要素に、指定の要素が指定の位置から含まれているかどうかを Boolean で返します。
valueToFind | 検索する値です。
メモ: 文字列や文字を比較するとき、includes() は大文字と小文字を区別します。 |
---|---|
fromIndex | 省略可。この配列内で valueToFind を探し始める位置です。
検索される最初の文字は、fromIndex が正の値の場合は、fromIndex で見つかり、fromIndex が負の数の場合は(fromIndex の絶対値だけ配列の末尾から文字数を戻った位置が検索開始地点となり)、fromIndex または arr.length + fromIndex で見つかります。 既定値は 0 です。 |
Boolean で、true は valueToFind の値が配列内(または、fromIndex が指定された場合はそれで示された配列の部分)から見つかった場合です。
ゼロの値はすべて、符号にかかわらず等しいとみなされます(つまり、-0 は 0 と +0 の両方に等しいとみなされます)が、false は 0 と同じとはみなされません。
注: 技術的に言えば、includes() は sameValueZero アルゴリズムを使用して、指定された要素が見つかったかどうかを確認しています。
D=[1, 2, 3].includes(2); //=true D=[1, 2, 3].includes(4); //=false D=[1, 2, 3].includes(3, 3); //=false D=[1, 2, 3].includes(3, -1); //=true D=[1, 2, NaN].includes(NaN); //=true
fromIndex が配列の長さと同じか大きい場合は配列を検索せずに false を返します。
let arr = ['a', 'b', 'c']; D=arr.includes('c', 3); //=false D=arr.includes('c', 100); //=false
fromIndex が負の値である場合、計算値のインデックスは配列内で valueToFind の円策を開始する位置として使用するよう計算されます。計算値のインデックスが -1 * arr.length 以下の場合は、配列全体が検索されます。
// 配列の長さは 3 // fromIndex は -100 // 補正されたインデックスは 3 + (-100) = -97 let arr = ['a', 'b', 'c']; D=arr.includes('a', -100); //=true D=arr.includes('b', -100); //=true D=arr.includes('c', -100); //=true D=arr.includes('a', -2); //=false
includes() メソッドは意図的にジェネリックになっています。this が Array オブジェクトであることは必須ではないので、他の種類のオブジェクト(例えば配列風オブジェクト)にも適用することができます。
以下の例は、includes() メソッドが関数の arguments オブジェクトに対して使用される様子を示しています。
(function() { alert(Array.prototype.includes.call(arguments, 'a')); //=true alert(Array.prototype.includes.call(arguments, 'd')); //=false })('a','b','c')
HTML: |
⯈スクリプト組み込み: |
JavaScript: | |
JavaScript: | |
表示内容: |
表示内容: |