jsで配列の中から指定の条件を満たす最初の要素の位置を取得する

公開日時

jsで配列の中から指定の条件を満たす最初の要素の位置(index)を取得したい場合、findIndexが使える。

条件に合う要素が見つからない場合は-1が返ってくる。

また、位置ではなく最初の要素を取得したい場合はfindを使う。

こちらは条件に合う要素が見つからない場合はundefinedが返ってくる。

const array1 = [
  { name: 't', value: 1 },
  { name: 'e', value: 2 },
  { name: 's', value: 3 },
  { name: 't', value: 4 },
];

const isTname = (element) => element.name === 't';
console.log(array1.find(isTname));
// Object { name: "t", value: 1 }

console.log(array1.findIndex(isTname));
// expected output: 0

// 条件に合う要素が見つからない場合
const isAname = (element) => element.name === 'a';
console.log(array1.find(isAname));
// undefined

console.log(array1.findIndex(isAname));
// expected output: -1

参考


Related #js

AWS SESの受信メールを暗号化してs3に保存しLambdaで読み込む

jsの場合、複合処理を独自実装する必要がある

Next.jsのPreview Mode時はAnalyticsを無効化する

cookieの__next_preview_dataキーで判定

Next.js 11

手軽にアップグレードできた

VSCode Remoteで新規ファイルを作った際にTypescriptのPathが認識されない問題

「Ctrl + Shift + P」でコマンドパレットを開いて「Reload Window」を実行