JSONについて質問です。
jqを使用してデータを抽出しているのですが、データ抽出件数が0件の場合、配列0のJSON出力をかえすにはどのような意味でどのようにコードを書けば良いでしょうか?
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
回答2件
0
ベストアンサー
回答本文
//
という演算子があるので、それが使えるかもしれませんん。
※ jqのマニュアル
jq "{フィルター処理} // []"
でフィルターの結果が空になった時に、//
の後ろにある値を返すように出来るみたいです。
以下、試してみた例
GitHubAPIを用いて、特定ユーザーのリポジトリの情報を使った例
bash
1# フィルター処理の結果が1件以上 2» curl https://api.github.com/users/attakei/repos 2>/dev/null| jq "map(select(.id == 138411110)) // []" 3[ 4 { 5 "id": 138411110, 6 "参考用のJSONなので", "中略", 7 "default_branch": "master" 8 } 9] 10 11# フィルター処理の結果が0件 12» curl https://api.github.com/users/attakei/repos 2>/dev/null| jq "map(select(.id == 138411111)) // []" 13[]
投稿2020/09/16 10:44
総合スコア2740
0
jqを使用して
jQueryの事?
データを抽出しているのがどんな処理なのかわからないけど
javascript
1/* 2var jsArray = []; // 配列0のJSON 3jsArray.push({ id: 1, name: 'Kojima' }); // こんな感じで追加 4*/
という事なのかな?
細かくは【JavaScript】オブジェクト(連想)配列の初期化・追加・参照・更新・削除を参照してね---
追記
jq Manual
こちらの内容との事なので回答を取り消しさせていただきます。
失礼しました。
投稿2020/09/16 08:51
編集2020/09/16 11:34総合スコア2506
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/09/16 11:38
2020/09/17 01:40
2020/09/17 01:45
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/09/16 11:28
2020/09/16 11:30