初期キーなしの複数エントリJSONをforEach()で繰り返し処理して表示する方法
はじめに
初期キー(ルートのキー名)を持たず、複数のオブジェクトが配列として格納されたJSONデータを扱う場合、JavaScriptのforEach()メソッドを使うと簡単に各要素を反復処理して表示できます。forEach()は配列の各要素に対して、指定したコールバック関数を順番に実行するメソッドです。
サンプルコード
以下は、学生情報を格納したJSON配列をforEach()で反復処理し、各プロパティを出力する例です。
const details = [
{
"studentId": 101,
"studentName": "John Doe",
},
{
"studentId": 102,
"studentName": "David Miller",
},
];
details.forEach(obj => {
console.log("StudentId=" + obj.studentId);
console.log("StudentName=" + obj.studentName);
});プログラムの実行方法
上記のプログラムを実行するには、Node.js環境で次のコマンドを使用します。
node fileName.js
ここでは、ファイル名を「demo174.js」として保存しています。その場合は以下のように実行します。
node demo174.js
実行結果
上記のプログラムを実行すると、次のような出力が得られます。
PS C:\Users\Amit\javascript-code> node demo174.js StudentId=101 StudentName=John Doe StudentId=102 StudentName=David Miller
ポイント解説
・forEach()は配列の要素を1つずつ取り出してコールバック関数に渡すため、for文でインデックスを管理する必要がなく、コードがシンプルになります。
・各オブジェクトのプロパティには「obj.studentId」のようにドット記法でアクセスできます。
・JSON形式の文字列を読み込む場合は、事前にJSON.parse()でオブジェクトに変換しておく必要があります。
・配列の途中で処理を中断したい場合は、代わりにfor...of文やsome()、every()などの使用を検討してください。forEach()ではbreakが使えない点に注意しましょう。
-
RedisでJSONドキュメントをインデックス化・クエリ・全文検索 ― RedisJSON 2.0とRediSearch 2.2の新機能
RedisJSONとRediSearchは、Redisのクラウドサービスにおいて最も人気のあるモジュールです。RedisJSONとRediSearch(Redisにバンドル)のDockerイメージは、毎日2,000回以上ダウンロードされています。4年前にテクノロジーエバンジェリストのItamar Haberが最初のバージョンを執筆した際、彼を先見者と呼ぶ理由がここにあります。4月にはRedisConfにおいて、JSON、インデックス作成、全文検索機能に関する複数の発表を行いました。そして本日、これらの機能のプライベートプレビューを発表できることを嬉しく思います。 この記事では、まず現在のRe
-
【VBA】Excelで複数条件をフィルターする方法(AND型・OR型の両方に対応)
この記事では、ExcelのVBAを使って、データセットから複数の条件でフィルター(抽出)する方法を解説します。AND型とOR型、両方の複数条件に対応したフィルター手法を学ぶことができます。 VBAでExcelの複数条件をフィルターする2つの簡単な方法 ここでは、「Martin Bookstore」という書店の書籍名・書籍の種類・価格をまとめたデータセットを使用します。 今回の目標は、このデータセットに対してVisual Basic for Applications(VBA)を使い、複数の条件でフィルターを行うことです。 1. VBAでAND型の複数条件をフィルターする まずは、任意のデータセ