指定した値が含まれるか真偽値で返す
// ── 基本: 配列に値が含まれるか調べる ──────────────────
const fruits = ['apple', 'banana', 'cherry'];
console.log(fruits.includes('banana')); // true ← 含まれる
console.log(fruits.includes('grape')); // false ← 含まれない
// ── よくある使い方: 許可リストのチェック ──────────────
const ALLOWED = ['admin', 'editor', 'viewer'] as const;
const role = 'editor';
if (ALLOWED.includes(role)) {
console.log('アクセス許可');
}
// ⚠️ indexOf との違い: NaN も正しく検出できる
[NaN].includes(NaN); // true ← includes は正確
[NaN].indexOf(NaN); // -1 ← indexOf は検出できない
// 第2引数: 検索開始インデックス(省略可)
[1, 2, 3, 1].includes(1, 2); // true ← index 2 以降から検索NaNの検索にも使える点がindexOfと異なる。型の厳密比較(===相当)で判定する。