Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
72
Help us understand the problem. What is going on with this article?
@tonkotsuboy_com

配列内の要素の存在確認にはArray.includes()メソッドが便利(ES2016新機能)

More than 3 years have passed since last update.

2016/06/17、JavaScriptの仕様「ECMAScript」のECMAScript 2016(※)がリリースされました。ES2016で追加された機能は2つです。

  • Exponentiation(**) Operator
  • Array.prototype.includes()メソッド

本エントリーでは、Array.prototype.includes()メソッドについて解説します。「Exponentiation Operator」についてはこちらの記事で解説します。
べき乗をするならMath.pow()よりもExponentiation Operatorが手軽(ES2016新機能)

※ 言語仕様書:「ECMAScript® 2016 Language Specification

Array.prototype.includes()メソッドは配列内の値検索のためのメソッド

Array.prototype.includes()メソッドは、配列内にある要素が含まれているかどうかを調べるためのメソッドです。

次のような配列を例にして説明します。

var array = [1, 2, 3, 4, 5];

Array.prototype.includes()メソッドを使って、3という要素が含まれているかどうかを調べるには次のように行います。

// 3が含まれているかどうか
array.includes(3);

arrayの中には3が含まれているので、trueが返ります。

image

▲ Google Chromeでの実行結果

では、6が含まれているかどうかを調べるとどうなるのでしょうか?

// 6が含まれているかどうか
array.includes(6);

arrayの中には6が含まれていないので、falseが返ります。

image

▲ Google Chromeでの実行結果

このように、Array.prototype.includes()メソッドは配列内の値検索を楽にするメソッドです。

対応ブラウザは?

2018/02/06時点では、IE 11を除く全主要ブラウザで対応しています。

参考:ECMAScript Next compatibility table

IE 11でも対応する必要がある場合は、core-jsなどのポリフィルを使いましょう。

72
Help us understand the problem. What is going on with this article?
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
tonkotsuboy_com
フロントエンド / 九州大学卒 / ウェブ制作 / JavaScriptコードレシピ集の著者 / CSS Nite 2017〜2019ベストセッション / TechFeed公認エキスパート /お仕事依頼はDMまで

Comments

No comments
Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account Login
72
Help us understand the problem. What is going on with this article?