ホームページ > 記事 > ウェブフロントエンド > JavaScript におけるオブジェクトのシリアル化の概要_javascript スキル
Java 言語と同様に、JavaScript でオブジェクトをシリアル化および逆シリアル化し、オブジェクトを保存できます。 ECMAScript 5 標準では、JavaScript でのオブジェクトのシリアル化は JSON.stringify() を通じて実装され、逆シリアル化は JSON.parse() を通じて実装されます。
ECMAScript 3 標準のみをサポートするブラウザの場合は、Douglas Crockford によって作成された json2.js (
https://github.com/douglascrockford/JSON-js) を使用できます。
オブジェクトをシリアル化するプロセス中に、NaN、Infinity、および -Infinity は「null」にシリアル化され、Date オブジェクトは対応する時間を表す文字列にシリアル化されます (ただし、 JSON.parse() を使用して逆シリアル化すると、時刻文字列は通常の文字列として存在し、Date オブジェクトとして再構築されません)。
JSON.stringify() を使用してオブジェクトをシリアル化する場合、シリアル化されたプロパティはオブジェクト自体の列挙可能なプロパティ (Own) に制限されます。 JSON.stringify() の実行中、JavaScript はまずシリアル化する必要のあるオブジェクトに toJSON() メソッドがあるかどうかを確認します。 toJSON() メソッドが存在する場合は、そのメソッドが呼び出され、返された結果がメソッドとして使用されます。連載対象。 toJSON() メソッドが存在しない場合は、デフォルトのシリアル化メソッドが使用されます。