1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

連想配列の中に一つでも指定した値が存在するか確認する方法

Posted at

はじめに

reactでコードを書いていると、配列を使った実装が多いなぁと感じます。(reactだけじゃないかもしれませんが)
今回は、配列の中に指定した値が存在しているかチェックする必要があったため調べて実装したことを備忘録として残そうと思います。

前提

自分のコードをそのままコピペすると前提説明が長くなりそうなので簡単な例を作りました。

例として、下記のような果物の連想配列があるとします。
ゴールはfruitsのnameの値に"apple"があれば、trueを返すコードを実装することです。

const fruits = [{name: "apple", price: 200,}, {name: "lemon", price: 100,}, {name: "orange", price: 300}]

someメソッドを使用する

下記のsomeメソッドを使用すれば簡単にコードを書くことができます。
someメソッドは、指定された関数のなかで一つでもtrueを返した場合はtrueを返し、それ以外はfalseを返します。

array.some(arr => ~ )
//他にも引数を指定できますが、今回は割愛します

実際のコード

someメソッドを使用して下記のように記述をすれば、fruitsのnameの値に"apple"あればtrueを返してくれます。
もちろん配列に値が存在しない場合はfalseを返してくれます。

const fruits = [{name: "apple", price: 200,}, {name: "lemon", price: 100,}, {name: "orange", price: 300}]

const checkFruits1 = fruits.some(fruit => fruit.name === "apple")
console.log(checkFruits1)
//=> true

const checkFruits2 = fruits.some(fruit => fruit.name === "banana")
console.log(checkFruits2)
//=> false

終わりに

配列の存在チェックに使えるメソッドは他にも"indexOf"や"includes"メソッドなどがあります。
色々な場面に即した実装ができるようになるために、またの機会に他のメソッドもまとめて理解を深めようと思います。

参考

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?