es6 で配列に特定の値が含まれているかどうかを確認する方法

青灯夜游
リリース: 2022-03-07 18:35:31
オリジナル
10509 人が閲覧しました

es6 では、配列の include() メソッドを使用して、配列に特定の値が含まれているかどうかを判断できます。このメソッドは、配列に特定の値が含まれているかどうかを検出するために使用できます。構文は「array」です。 object.includes(value)」。

es6 で配列に特定の値が含まれているかどうかを確認する方法

このチュートリアルの動作環境: 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 サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート