javascript: オブジェクトの配列で存在チェック

javascript: オブジェクトの配列で存在チェック:


はじめに

オブジェクトの配列内のある項目について、存在チェックを行いたい機会があり、findIndex関数を使うと便利だったのでそのメモです。

文中で使用している、findIndex関数、アロー関数はES6以降対応なのでご留意ください。


findIndex()で存在チェック

実行例です。findIndexの仕様として、見つかった場合はインデックス番号を、見つからない場合は-1を返します。

const users = [ 
  {id:1, name:"Ichiro", language:"python"}, 
  {id:2, name:"Jiro", language:"ruby"}, 
  {id:3, name:"Saburo", language:"java"}, 
  {id:4, name:"Shiro", language:"python"} 
]; 
 
// true 
console.log(users.findIndex(user => user.language === "python") != -1 ? true : false); 
// false 
console.log(users.findIndex(user => user.language === "php") != -1 ? true : false); 


補足

以下のような書き方もできます。オブジェクトの構造が頭に入ってないと読みにくい気もしますが。。

// true 
console.log(users.findIndex(({language}) => language === "python") != -1 ? true : false); 


参考

MDN:Array.prototype.findIndex()
MDN: アロー関数

コメント

このブログの人気の投稿

投稿時間:2021-06-17 22:08:45 RSSフィード2021-06-17 22:00 分まとめ(2089件)

投稿時間:2021-06-20 02:06:12 RSSフィード2021-06-20 02:00 分まとめ(3871件)

投稿時間:2021-06-17 05:05:34 RSSフィード2021-06-17 05:00 分まとめ(1274件)