ホームページ  >  記事  >  ウェブフロントエンド  >  JavaScript_Basics のオブジェクトと JSON

JavaScript_Basics のオブジェクトと JSON

WBOY
WBOYオリジナル
2016-05-16 15:51:471136ブラウズ

はじめに

JSON は JavaScript Object Natation であり、サーバーと JavaScript 間の対話に非常に適した軽量のデータ交換形式です。
JSON は、XML や YAML と同様のデータ交換形式であり、さまざまな言語間で構造化情報を転送する方法です。一方、JavaScript オブジェクトは、PHP の配列、C のクラスや構造体と同様、JavaScript 言語のデータ型です。

JSON および JavaScript オブジェクトを定義する

JavaScript プログラムでオブジェクトを定義する場合、オブジェクトの属性名は二重引用符で囲むかどうかを指定できます。属性名に特殊文字 (!、if など) が含まれる場合は、二重引用符を追加する必要があります。
JSON を定義する場合、属性名を二重引用符で囲む必要があります。

コード例:

1. JavaScript オブジェクト
を定義します。

コードをコピー コードは次のとおりです:

var obj={name:"tudouya","sex":"man"}; #二重引用符を使用するか、
を使用せずに 2 つの属性を追加できます。 var obj={"!":"hello world"}; #属性名に特殊文字が含まれる場合は二重引用符を追加する必要があります

2. JSON 文字列
を定義します。
コードをコピー コードは次のとおりです:

var jsonString={"name":"tudouya"}; #JSON
を定義するときは二重引用符を追加する必要があります

JSON に変換された JavaScript オブジェクト

1. JavaScript オブジェクトを JSON に変換します

JavaScript の組み込み関数を使用して、JavaScript オブジェクトを JSON に変換できます。この関数は JSON.stringify() です。
コード例:

コードをコピー コードは次のとおりです:

var obj={名前:"つどうや",性別:"男"};
var jsonObj=JSON.stringify(obj);
console.log(jsonObj);
##出力結果は次のようになります: {"name":"tudouya","sex":"man"}

JavaScript オブジェクトを JSON に変換する場合、次の点に注意する必要があります:
オブジェクトに値が関数と日付である属性が含まれている場合、JSON は値が関数である属性を無視し、値が日付である属性を文字列に変換します。
コード例:
コードをコピー コードは次のとおりです:

var obj={
名前:「つどうや」、
誕生日:新しい日付()、
アクション:関数 (){
document.write("散歩");
}
};
var jsonObj=JSON.stringify(obj);
console.log(jsonObj);
##出力結果は: {"name":"tudouya","birthday":"2014-08-12T10:05:00.497Z"}

JavaScript での JSON の解析

古いバージョンの JS では、通常、誰もが JSON を解析するために eval() 関数を使用しますが、ECMAScript5 では、JSON を解析するための新しい関数 JSON.parse() が提供されます。

この関数の使い方は比較的簡単なので、自分で試してみることができます。この関数が JSON 文字列に適用されると、JSON は JavaScript オブジェクトに変換されます。つまり、typeof 演算子を使用して関数の型を表示すると、戻り値は Object になります。
もう 1 つの注意点は、この関数は ECMAScript 5 以降でのみサポートされるということです。ブラウザの古いバージョンの場合、この関数はサポートされていない可能性があります。解決策は、この関数を実装する js ファイル、つまり json2.js をロードすることです。 JQuery フレームワーク jQuery.parseJSON() を使用している場合、この関数は JSON.parse() メソッドを呼び出します。
JSON を解析するための eval() メソッドの使用については、詳細に検討した後に記録します。

非常に重要な概念

フロントエンドの初心者として、「JSON オブジェクト」という言葉をよく聞きますが、実際には「JSON オブジェクト」という概念はありません。JSON の実際の形式は文字列です。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。