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または逆に簡単にシーケンス化できます..netの場合、プログラマーはJsonのようなものを使用することができる.Netのクラスライブラリは、これらの操作を自動化したり(反射メカニズムを使用すると推定されています)、自分のプログラムを使用してこれらのことをすると、より速くなる可能性があります.
    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