3分でJSONが何なのかわかる
3766 ワード
本文はUnderstanding JSON:the 3 minute lessonという文章から翻訳したものです.この文章を見て、あなたはどうして国外の月が丸いと言ったのかを知っていて、それは完全にあなたの頭の中の考えをすべて整理して、意識の流れと散文を読む楽しみがあります.
もしあなたが私と同じように(私はあなたがそうであることを心配しています)、それでは、今まで、これはあなたのJSONに対する経験であるべきです: 2 2ヶ月前にJSON を聞いたことがありません一ヶ月前にこの言葉を聞いたが、 に気づかなかった.一週間前に何度もこの言葉が言及されていることに気づいて、考え始めました.間違いありません.またいくつかのゴミが を勉強しなければなりません.今日あなたは心の奥の目覚まし時計に起こされて、この死んだjsonはいったい何なのかと思っています.どうして急にあちこちにいたの?
そこで夜、私はゆっくりしたバスに乗って家に帰って(金曜日はいつも遅い)、そして自分にJSONに関する資料をたくさん探しました.だから私は上品にあなたをJSONの門に連れて行くことができます.
これで始まります...
このアルファベットはどういう意味ですか.
JavaScript Object Notation.
[コミカルな名前です.Lightweight Ecmascript Object Notation、または「LEON」と略称されるはずです.]
それは何ですか.
JSONはオブジェクトを渡す構文で、オブジェクトはname/valueペア、配列、その他のオブジェクトであってもよい.
次はJSONコードの一部です.
{"skillz": {"web":[ {"name": "html", "years": "5"}, {"name": "css", "years": "3"}],"database":[ {"name": "sql", "years": "7"}]}}
分かったか?では、それを見たらJSONだとわかります.主な部分:
花括弧、角括弧、コロン、カンマ花括弧は「容器」 を表す.角括弧マウント配列 名前と値は、 とコロンで区切られています.配列要素はカンマで に区切られています.
それを「拒食症になったXML」と考える
(もしあなたが私と同じように年を取ったら、それを階層関係のある'.INI'ファイルと考えることができます)
(あなたが独りよがりのLispピエロなら、それを「S-expressions」と思って、独りよがりにしてもいいでしょう)
JSONはXMLに似ています.彼らはすべて“自己説明”で、これは値がすべて列挙することができることを意味して、“人類が読むことができる”の ですはすべて階層があります.(たとえば、値に値を保存できます) は、複数のプログラミング言語によって解析され、 を使用することができます.はいずれもAJAX方式(例えばhttpWebRequest) を伝達するために使用することができる.
JSONはXMLとは違います. XMLには要素の開始と終了に括弧とラベル名があります.JSONは括弧を使用し、データの開始と終了時にのみ使用します. JSONはもっと簡潔で、間違いなく人間の書くのに適していて、私たちにもっと速く読むことができるかもしれません. JSONはJavaScriptで簡単にeval()メソッドに渡すことができます を使用します. JSONには配列{各要素に独自の名前がない} がある XMLでは1つの要素に任意の名前を使用できます.JSONではJavascriptの予約字 は使用できません.
でもどうして?何がいいの?
ajaxのようなものを書くとき、JSONを使うと、手でXMLをつづるのを無理にします.もっと速いです.
同じようにajaxなどを書くとき、どのように簡単ですか?XML方式かJSON方式か:
XML方式: XMLファイルを取り戻す はそれを循環し、そこから値 を抽出する.はこれらの値を処理し、 等である.
コントラスト
JSON方式: JSON文字列を取り戻します. ‘eval’JSONデータ オブジェクト向けですか?
いいえ、厳密に言えば、違います.
まるでVB 6の中のオブジェクト向けのようです.データと方法を分離するのに良いパッケージメカニズムを提供していますが、継承、多型、インタフェース、その他の類似のオブジェクト向けのものは提供されていません.
明らかにjavascriptをメンテナンスしやすくし、分析し、多重化する方向に一歩前進した.
Thomas FrankはclassyJSONという器用なjavascriptライブラリを書き、JSONコードに継承や定義範囲などの特徴を加えた.
クライアントでしか使われていませんか?
はい、そうではありません.サーバ側では、オブジェクトをJSONまたは逆に簡単にシーケンス化できます.
3分で終わりそう....
私の知っている限りでは、JSONはDouglas Crockfordというやつによって発明された.もしあなたが好きなら、彼のウェブサイトを見てもいいです.彼はとても面白いです.
今からJSONがわかる人が書いたものを読みに行きます
(Delicious using JSONから検索した!) DOM Query Speed Test 24 ways: Don’t be eval() Understanding JSON: the 3 minute lesson Serializing Objects as JavaScript using Atlas, JSON.NET and AjaxPro JSON – Wikipedia, the free encyclopedia Introduction to JSON XML.com: JSON and the Dynamic Script Tag: Easy, XML-less Web Services for JavaScript Classy JSON ajax json tutoral XML to JSON – a converter
これが全てです.
私は数分でこれらのものを整理するしかありません.私が言ったことはすべて間違っているかもしれません.もしそうなら、伝言を残して私に教えてください.私がどんなに馬鹿なのか教えてください.どんな間違いも直してくれて嬉しいです.幸運を祈ります.
(辺注:{と}を"<"と"/>"に置き換えると、":""を"/"...gaXmlによく似たものが得られます.面白い世界です.
(辺注2:JasonとAjaxはギリシャ神話の英雄です.予告:他の技術ゴミには、Heracles、Perseus、Deucalion、Theseus and Bellerophonが含まれています.)
http://www.jcodecraeer.com/a/jquery_js_ajaxjishu/2012/0308/23.html
もしあなたが私と同じように(私はあなたがそうであることを心配しています)、それでは、今まで、これはあなたのJSONに対する経験であるべきです:
そこで夜、私はゆっくりしたバスに乗って家に帰って(金曜日はいつも遅い)、そして自分にJSONに関する資料をたくさん探しました.だから私は上品にあなたをJSONの門に連れて行くことができます.
これで始まります...
このアルファベットはどういう意味ですか.
JavaScript Object Notation.
[コミカルな名前です.Lightweight Ecmascript Object Notation、または「LEON」と略称されるはずです.]
それは何ですか.
JSONはオブジェクトを渡す構文で、オブジェクトはname/valueペア、配列、その他のオブジェクトであってもよい.
次はJSONコードの一部です.
{"skillz": {"web":[ {"name": "html", "years": "5"}, {"name": "css", "years": "3"}],"database":[ {"name": "sql", "years": "7"}]}}
分かったか?では、それを見たらJSONだとわかります.主な部分:
花括弧、角括弧、コロン、カンマ
それを「拒食症になったXML」と考える
(もしあなたが私と同じように年を取ったら、それを階層関係のある'.INI'ファイルと考えることができます)
(あなたが独りよがりのLispピエロなら、それを「S-expressions」と思って、独りよがりにしてもいいでしょう)
JSONはXMLに似ています.
JSONはXMLとは違います.
でもどうして?何がいいの?
ajaxのようなものを書くとき、JSONを使うと、手でXMLをつづるのを無理にします.もっと速いです.
同じようにajaxなどを書くとき、どのように簡単ですか?XML方式かJSON方式か:
XML方式:
コントラスト
JSON方式:
いいえ、厳密に言えば、違います.
まるでVB 6の中のオブジェクト向けのようです.データと方法を分離するのに良いパッケージメカニズムを提供していますが、継承、多型、インタフェース、その他の類似のオブジェクト向けのものは提供されていません.
明らかにjavascriptをメンテナンスしやすくし、分析し、多重化する方向に一歩前進した.
Thomas FrankはclassyJSONという器用なjavascriptライブラリを書き、JSONコードに継承や定義範囲などの特徴を加えた.
クライアントでしか使われていませんか?
はい、そうではありません.サーバ側では、オブジェクトをJSONまたは逆に簡単にシーケンス化できます.
.net
の場合、プログラマーはJsonのようなものを使用することができる.Netのクラスライブラリは、これらの操作を自動化したり(反射メカニズムを使用すると推定されています)、自分のプログラムを使用してこれらのことをすると、より速くなる可能性があります.3分で終わりそう....
私の知っている限りでは、JSONはDouglas Crockfordというやつによって発明された.もしあなたが好きなら、彼のウェブサイトを見てもいいです.彼はとても面白いです.
今からJSONがわかる人が書いたものを読みに行きます
(Delicious using JSONから検索した!)
これが全てです.
私は数分でこれらのものを整理するしかありません.私が言ったことはすべて間違っているかもしれません.もしそうなら、伝言を残して私に教えてください.私がどんなに馬鹿なのか教えてください.どんな間違いも直してくれて嬉しいです.幸運を祈ります.
(辺注:{と}を"<"と"/>"に置き換えると、":""を"/"...gaXmlによく似たものが得られます.面白い世界です.
(辺注2:JasonとAjaxはギリシャ神話の英雄です.予告:他の技術ゴミには、Heracles、Perseus、Deucalion、Theseus and Bellerophonが含まれています.)
http://www.jcodecraeer.com/a/jquery_js_ajaxjishu/2012/0308/23.html