JSONについて調べると、
・XMLよりも軽量で扱いやすい
・javascriptやphpから使う
上記のような説明と簡単にコードの書き方くらいしか説明されていません。
どういった場合にJSONは利用できるのかイメージを沸かせたいです。
例えば、トップページに新着情報があり、過去の新着情報を一覧として見れるページがあるとします。そして、過去の新着情報一覧のページにある新着情報を新着順に10件選び、選んだ10件をトップページの新着情報に表示させる場合に使う。
こんなイメージで間違っていないでしょうか。
No.4ベストアンサー
- 回答日時:
>
http://blogs.dion.ne.jp/kotemaru/archives/2011-0 …> こちらを参考にすると、CSVよりもJSONの方が軽いそうなのですが、
・Python版は XML or CSV のようだ
・(XMLより)JSONの方が軽い
・CSVは簡易形式としては便利だけどBigtableを完全に表現できない
・(だから)まずデータ形式はJSONとする。
という意味で書いている文章だと思います。JSONの方が軽い,という箇所は,XMLの方だけに掛かっているはずです。一般的にJSONよりCSVの方が軽いと言えるでしょう。
> 小量の場合にCSVを使う利点は何でしょうか。
表計算ソフトで作成した最も基本的な2次元表のようにデータ形式が単純なら扱いやすい,ExcelなどからそのままCSV出力できるというのが利点でしょうか。
例えば,CSV形式の例がこんな風であるのに対して,
"postal","x","y","line","name"
"6770039","134.997666","35.002054","JR加古川線","日本へそ公園"
"6770033","134.995740","34.988777","JR加古川線","比延"
"6790313","134.992545","35.022740","JR加古川線","黒田庄"
JSON形式の例はこうなります。
{"station":[
{"postal":"6770039","x":134.997666,"y":35.002054,"line":"JR加古川線","name":"日本へそ公園"},
{"postal":"6770033","x":134.995740,"y":34.988777,"line":"JR加古川線","name":"比延"},
{"postal":"6790313","x":134.992545,"y":35.022740,"line":"JR加古川線","name":"黒田庄"}
]}
CSVと比較したJSONの特徴として次のようなことは言えるでしょう。
・属性名が繰り返し記録されている分だけ,CSVよりもサイズは大きい。
・繰り返し登場している各情報は「配列 station[] の要素である」という上位の情報までJSONでは表現できている。
・つまり最も基本的な2次元表的なデータ形式だけでなく「階層構造をもった情報は、階層構造をそのまま表記できる(ANo.2)」
JSONの名が示すとおり,JavaScriptで用いられるオブジェクト表記法(Object Notation)だということです。
No.3
- 回答日時:
[No.2]のお礼に対する回答ね。
「こちらを参考にすると、CSVよりもJSONの方が 軽いそうなのですが、……」
参考のページは、ちょっと誤解をまねくかきかただね。本人も XML と JSON の比較のつもりで書いているんじゃない?
自分の予想をもっと信じていいとおもうよ。
No.2
- 回答日時:
[No.1] さんも書いているけれど、JSON は、情報をテキストで表記するための書式のひとつにすぎないよ。
例えで質問者さんがあげている新着情報だと、一つの新着情報に必要な項目は、たかだか
- 日時
- 見出し
- 詳細
ぐらいでしょ?
多少項目が増えることはあってもこれぐらいなら、表形式の情報表記書式、タブ区切りテキストやカンマ区切りテキスト(CSV)で十分だよね。
でも、もっと複雑な情報、例えば組織図をイメージして、そして、その組織図を表形式であらわせるかためしてみて?
表形式のデータベースを学んだひとなら、できなくもないけれど、とても扱いずらいよ?
組織図のような、階層構造をもった情報は、階層構造をそのまま表記できる JSON 書式がまさに最適だね。
もっと複雑な情報なら XML をつかえば、たいていまかなえるよ。
つまり、情報の複雑さにあわせて、情報表記の書式を選べばいいということになるかな?
ありがとうございます。CSVというのもあるのですね。
1点疑問があります。JSONよりもCSVの方が軽いので
CSVで複雑にならない程度の量ならCSVを使うべきと予想したのですが、
http://blogs.dion.ne.jp/kotemaru/archives/2011-0 …
こちらを参考にすると、CSVよりもJSONの方が軽いそうなのですが、
小量の場合にCSVを使う利点は何でしょうか。
http://sookibizviz.blog81.fc2.com/blog-entry-175 …
こちらもJSON、CSV、XMLの参考になりました。
No.1
- 回答日時:
例として,下記リンク先にアクセスして,各APIの説明ごとに紹介されている「サンプルレスポンス」のURLをクリックしてください。
JSON形式のデータが閲覧できます。http://express.heartrails.com/api.html
ということで。
JSONはデータ表現形式のひとつですから,質問文にあるような場合はもちろん,他のどんな場合にも使えるといってよいでしょう。
XMLのようにコードを書いていろいろ動きを作るものと思っていましたが、
JSONはただコードをテキスト化したものということなんですね。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- HTML・CSS 別サイトのHTML内にある情報を自動取得して、自分のサイトに組込む方法を教えてください。 例えば、Y 1 2023/06/15 08:09
- CGI (フリーの)ツリー掲示版CGI、昔は多用させてもらいましたが・・今セキュリティ上どうでしょう? 2 2023/06/25 07:18
- ハッキング・フィッシング詐欺 アマゾンを語るメールがまた来た 5 2023/05/11 18:56
- CAD・DTP DraftSight 2022 PC乗り換え方法 とアカウント?の確認方法 1 2022/11/26 23:03
- 賃貸マンション・賃貸アパート スーモなどの物件情報サイトに掲載されている物件は情報が古いものが多いのですか? 最新のものはやはり不 1 2023/02/09 10:12
- その他(IT・Webサービス) WEBサイト内のファイルを探す方法は? 1 2022/11/11 16:38
- SoftBank(ソフトバンク) ソフトバンク iPhone SE 3 MNP だと本体24円 ミニフィットプラン で購入できる? 0 2023/03/06 12:59
- MySQL PHPとMySQLを使った掲示板の作り方 1 2022/06/02 13:00
- 確定申告 e-taxで開業届を出す方法がわかりません 1 2022/06/01 19:00
- Google Drive Google form を利用して 問い合わせフォームを作りたい 1 2022/04/25 14:15
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
相手側の携帯が電源切れてる時...
-
1コールだけ鳴るけど切れる電話...
-
face book で女性の方からline ...
-
よく05(04)lineって見かけるん...
-
名前を教えてしまったら何に悪...
-
LINE追加で「該当するユーザー...
-
ラインナップとラインアップは...
-
遠くにいる友達とLINE交換する...
-
あの噂の世界三大チェーンメー...
-
LINEについてです。いつも通り...
-
Windowsのバッチファイルで正規...
-
line でおはようございます、の...
-
ネットで個人の電話番号を調べ...
-
私がlineのアイコンを変更する...
-
教えてください
-
会社の先輩とLINE プライベート...
-
「一番上、真ん中、下」を示す英語
-
先輩のライン(男性)を追加した...
-
python flask から fastapiへの...
-
lineのブロック事情について質...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
相手側の携帯が電源切れてる時...
-
1コールだけ鳴るけど切れる電話...
-
LINE追加で「該当するユーザー...
-
よく05(04)lineって見かけるん...
-
face book で女性の方からline ...
-
いきなりラインのトークに「新...
-
Windowsのバッチファイルで正規...
-
ある男子から、ライン追加され...
-
ラインナップとラインアップは...
-
生産ラインの品質を表す直行率...
-
遠くにいる友達とLINE交換する...
-
先輩のライン(男性)を追加した...
-
「一番上、真ん中、下」を示す英語
-
LINEで好きな人が「笑」を全然つ...
-
法線(normal line)はなぜそう...
-
新しいクラスメイト全員のLINE...
-
着信拒否、ラインブロックと解...
-
swift言語のprintln()関数で「p...
-
既婚女性にラインを聞くことに...
-
質問です。 先日クラスの女子に...
おすすめ情報