###実現したいこと
jQueryで、対象のjson
から、
「user_id = '777'
を持っている"user"
の部分」
を取得するにはどのようにすればよろしいでしょうか?
js
1// 対象 2var json = '{ 3 "comment":[ 4 { 5 "comment_id":2, 6 "comment_type":"A", 7 "user":{"user_id":"777","user_type":"guest"}, // ここだけ取得したい 8 "vote":0 9 }, 10 { 11 "comment_id":1, 12 "comment_type":"A" 13 } 14 ] 15}';
つまり、上記json
から下記result
を取得したいのです。
// 取得 var user_id = '777'; var result = '知りたい処理'; // 出力 console.log( result ); // '{"user_id":"777","user_type":"guest"}' という風に取得したい
ちなみにjson
には同じuser_id
が複数ありえますが、取得する"user"
は最初の1つだけで構いません。
###試したこと
$.grep
を使って下記を書いてみましたが、空の配列が取得されるだけでした…
jQuery
1// 対象 2var json = '{"comment":[{"comment_id":2,"comment_type":"A","user":{"user_id":"777","user_type":"guest"},"vote":0},{"comment_id":1,"comment_type":"A"}]}'; 3var object = JSON.parse( json ); 4 5// 取得 6var user_id = '777'; 7var result = $.grep(object, 8 function(obj, idx){ 9 return (obj.user_id == user_id); 10 } 11); 12 13// 出力 14console.log( result );

回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/07/09 22:38
2019/07/09 22:42
2019/07/09 22:44
2019/07/09 23:17