javascript学習ノート(六)データタイプとJSONフォーマット

4891 ワード

JSONとは
JSON:JavaScriptオブジェクト表示法(JavaScript Object Notation).
JSONの形式は、大かっこ「%」で囲まれた項目のリストで、各項目の間にカンマ(,)で区切られていますが、項目はコロン(:)で区切られた属性名と属性値です.これは典型的な辞書の表示形式であり、javascriptの対象が辞書構造であることを改めて示している.どんなに複雑なオブジェクトでも、JSONコードを使って作成し、値を付けることができます.
JSON構造
JSONには二つの構造があります
jsonは簡単に言えば、javascriptのオブジェクトと配列です.この2つの構造はオブジェクトと配列の2つの構造です.この2つの構造によって様々な複雑な構造が表現されます.
1、対象:対象はjsに「{}」と表示されている内容で、データ構造は{key:value,key:value、...}のキー値ペアの構造であり、対象に向けた言語ではkeyが対象の属性であり、valueが対応する属性値であるため、分かりやすく、取得方法は対象となります.keyは属性値を取得します.この属性値の種類は数字、文字列、配列、配列、配列、配列オブジェクトはいくつかあります
2、配列:配列はjsで中かっこ「[]」で囲まれた内容で、データ構造は「java」、「javascript」、「vb」、値の取り方はすべての言語と同じで、索引を使って取得します.フィールド値の種類は数字、文字列、配列、象の数種類があります.オブジェクト、配列の2つの構造を経て複雑なデータ構造に組み合わせることができます.
JSON文法規則
JSON文法はJavaScriptの対象がフランス語法のサブセットを表しています.
データの名前/値ペアにおけるデータは、カンマ区切りかっこで保存されたオブジェクトの四角い括弧保存配列JSONの値とすることができます.
数値(整数または浮動小数)文字列(二重引用符)論理値(trueまたはfalse)配列(四角い括弧内)のオブジェクト(かっこ内)null
1)並んでいるデータの間をコンマ(",")で区切ってください.
2)マッピングはコロン(:)で表されます.
3)並列データの集合(配列)は、大かっこ([])で表されます.
4)マッピングされたセット(オブジェクト)は、大かっこ({})で表されます.JSONの例
属性のないオブジェクトを作成:
 
  
var obj = {};
オブジェクトを作成し、属性と初期値を設定します.
 
  
var author = {name : "trigkit4",age : 21 , sex : "male"};
オブジェクトを作成して属性と方法を設定します.
 
  
var hello ={content:"how are you?" , say :function(){alert(this.content)} };
他のオブジェクトやオブジェクトの入れ子などを作成します.
 
  
var company = {name:"Apple",
               product:"iPPhone",
               chairman:{name:"Tim Cook",age:54},
               employees:[{name:"Jony Ive",age:47},{name:"Lili",age:29}],
 };
オブジェクトは無秩序な名前/値ペアで、オブジェクトは左の分岐で始まり、右の分岐で終了します.
一つの値は、二重引用符で囲まれた文字列、または数値、一つのtrue or false、一つの配列または一つのオブジェクトとすることができます.
データの種類:
構造的に見ると、すべてのデータは最終的に3つのタイプに分解される.
第一のタイプはスカラー(scalar)で、つまり単独の文字列(string)または数字(numbers)で、例えば「北京」という単独の単語です.
第二のタイプはシーケンスで、つまりいくつかの関連データが一定の順序で並べられています.配列(array)またはリスト(List)とも呼ばれます.例えば、「北京、上海」です.
第三のタイプはマッピング(mapping)であり、つまり名/値ペア(Name/value)であり、データには名前があり、それに対応する値があり、これはハッシュ(hash)または辞書(dictionary)とも呼ばれ、例えば「首都:北京」である.プログラミング言語では、配列とオブジェクトがあれば、すべてのデータを格納することができます.
配列とオブジェクトの別の違いは、配列のデータに名前がなく、対象のデータに名前があります.
JavaScriptには5種類の簡単なデータタイプ(ベースデータタイプとも呼ばれる)があります.Unidefined、Null、Boolean、Number、String.もう1つの複雑なデータタイプ――Objectは、本質的には無秩序な名前ペアで構成されています.
typeofオペレータを使用すると、次の文字列に戻ります.
●「undefined」――この値が定義されていない場合;
●「ブーメラン」――この値がブール値であれば.
●「string」――この値が文字列であれば.
●「number」――この値が数値なら
●「object」――もしこの値が対象かnullであれば.
●「function」――もしこの値が関数であれば.
Unidefinedタイプ:
    `Unidefined`タイプは一つの値しかありません.var宣言変数を使っても初期化されていない場合、この変数の値はundefined Nullタイプです.
Nullタイプは2番目の値のデータタイプで、この特殊な値はnullです.論理的には、null値は空のオブジェクトポインタを表していますが、これはtypeofオペレータを使ってnullを検出したときに「object」に戻ります.
 
  
var car = null;
alert(typeof car); // "object"
Numberタイプ
このタイプは整数と浮動小数点の数値を表すために用いられ、またNaN(非数値Not a Number)という特殊な数値がある.この値は、本来返すべき数値の操作数が数値に戻らない場合を表します.
Stringタイプ
Stringタイプは、ゼロまたは16ビット以上のUnicode文字からなる文字列、すなわち文字列を表します.文字列はシングルクォーテーションマーク(')またはダブルクォーテーションマーク(")で表されます.数値、ブール値、オブジェクト、文字列値はいずれもToString()の方法がありますが、nullとundefinedの値はこの方法がありません.
多くの場合、toString()を呼び出す方法はパラメータを渡す必要がないが、数値のtoString()メソッドを呼び出した場合、一つのパラメータを渡すことができる.出力値の基数.
 
  
var num = 10;
alert(num.toString());      //"10"
alert(num.toString(2));     //"1010"
alert(num.toString(8));     //"12"
alert(num.toString(10));    //"10"
alert(num.toString(16));    //"a"
変換する値がnullかundefinedかどうかは分かりませんが、変換関数String()も使用できます.この関数は任意の種類の値を文字列に変換できます.String()関数は以下の変換規則に従います.
●String()の値がある場合は、この方法を呼び出し(パラメータなし)、結果を返します.
●値がnullであれば、「null」に戻ります.
●値がundefinedであれば、「undefined」を返します.
Objectタイプ
オブジェクトは、データと機能のセットです.オブジェクトは、newオペレータの後に作成するオブジェクトタイプの名前を実行することによって作成できます.Objectタイプのインスタンスを作成し、属性と方法を追加することにより、カスタムオブジェクトを作成することができます.
var o=new Object();typeof操作符
 
  
<br>     var s = "Nicholas"; <br>     var b =true; <br>     var c = 21; <br>     var u; <br>     var n = null; <br>     var o = {}; <br>     var obj = new Object;// new object() <p></p> <p>    alert(typeof s);//string<br>     alert(typeof b);//boolean<br>     alert(typeof c);//number<br>     alert(typeof u);//undefined<br>     alert(typeof n);//object<br>     alert(typeof o);//object<br>     alert(typeof obj);//object<br>
Jsonオンライン解析
Jsonオンライン解析:http://json.tongxiehui.net/