ホームページ >ウェブフロントエンド >jsチュートリアル >es6 で配列に特定の値が含まれているかどうかを確認する方法
es6 では、配列の include() メソッドを使用して、配列に特定の値が含まれているかどうかを判断できます。このメソッドは、配列に特定の値が含まれているかどうかを検出するために使用できます。構文は「array」です。 object.includes(value)」。
このチュートリアルの動作環境: Windows 7 システム、ECMAScript バージョン 6、Dell G3 コンピューター。
ES5 では、Array は要素の位置を見つけるための IndexOf をすでに提供しています。それが存在しない場合は、-1 を返します。ただし、この関数には、配列に要素が含まれているかどうかを判断する際に 2 つの小さな欠点があります。 1 つ目は、要素が含まれているかどうかを示すために -1 と要素の位置を返すことです。位置の点では問題ありませんが、セマンティックが十分ではありません。もう 1 つの問題は、NaN 要素があるかどうかを判断できないことです。
例:
const arr1 = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', NaN] console.log('%s', arr1.indexOf(NaN))
結果:
-1
ES6 は、特定の要素が含まれているかどうかを判断する Array.includes() 関数を提供します。 、上記のindexOfの問題を解決します。2つの質問があります。要素が含まれているかどうかを true または false で直接返します。また、NaN に対しても有効です。
const arr1 = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', NaN] console.log('%s', arr1.includes('c')) console.log('%s', arr1.includes('z')) console.log('%s', arr1.includes(NaN))
結果:
true false true
includes() 関数の 2 番目のパラメータは、判定の開始位置を示します。
const arr1 = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', NaN] console.log('%s', arr1.includes('d', 1)) console.log('%s', arr1.includes('d', 3)) console.log('%s', arr1.includes('d', 4))
結果:
true true false
2 番目のパラメータは、右からの番号を示す負の数にすることもできますが、検索の方向は変わりません。検索の方向は依然として左からです。右に。
console.log('%s', arr1.includes('k', -1)) console.log('%s', arr1.includes('k', -2)) console.log('%s', arr1.includes('i', -3))
結果:
false true false
概要:
includes() メソッドは、配列に特定の値が含まれているかどうかを検出するために使用され、NaN を判定し、true/false を直接返すことができます。より直感的です。要素の位置を見つけるには
indexOf() メソッドが使用されます。NaN は判定できず、含まれていないことを意味する -1 を返します。-1 でない場合は、現在含まれる位置。
どちらの方法にも、実際の状況に応じて、それぞれ長所と短所があります。要素に NaN が含まれる場合は、includes() を使用します。それ以外の場合は、どちらでも使用できます。
【関連する推奨事項: JavaScript ビデオ チュートリアル 、Web フロントエンド ]
以上がes6 で配列に特定の値が含まれているかどうかを確認する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。