1. JSON.stringify() と JSON.parse() の違い私たちは皆、JSON.stringify()とJSON.parse()を使ったことがあるでしょう。名前からわかるように わかりやすいバージョン:
簡単に言えば、それらの機能は相対的です。JSON.stringify() を使用してオブジェクト a を文字列 c に変換した場合、JSON.parse() を使用して文字列 c をオブジェクト a に復元できます。 arr = [1,2,3]とします。 JSON.stringify(arr); //'[1,2,3]' typeof JSON.stringify(arr);//文字列 文字列を '[1,2,3]' とします。 console.log(JSON.parse(文字列)) //[1,2,3] console.log(typeof JSON.parse(string))//オブジェクト JSON.parse() を使用する際に注意すべき点は、このメソッドは JSON 文字列をオブジェクトに変換するため、文字列は JSON 形式に準拠している必要がある、つまりキーと値の両方を二重引用符で囲む必要があるということです。 a = '["1","2"]'とします。 b = "['1','2']"とします。 console.log(JSON.parse(a)); // 配列 [1,2] console.log(JSON.parse(b)); // エラー 2. JSON.stringify() の便利な使い方1. 配列にオブジェクトが含まれているかどうか、またはオブジェクトが等しいかどうかを判断します。 //配列にオブジェクトが含まれているかどうかを判断します。let data = [ {name:'ナゲッツ'}, {name:'CSS 学習'}, {name:'js 学習'}, ]、 val = {name:'ナゲット'}; JSON.stringify(data).indexOf(JSON.stringify(val)) !== -1; // 真 // 2つの配列/オブジェクトが等しいかどうかを判定する let a = [1,2,3], 1,2,3 は 1 です。 JSON.stringify(a) === JSON.stringify(b); //true 2. localStorage/sessionStorage にオブジェクトの保存を許可します。 デフォルトでは、localStorage/sessionStorage は文字列しか保存できません。実際の開発では、オブジェクトを保存する必要がある場合がよくあります。この場合、保存時に json.stringify() を使用してオブジェクトを文字列に変換できます。キャッシュを取得するときは、json.parse() を使用してオブジェクトに戻すだけです。 //ストレージ関数 setLocalStorage(key,val){ window.localStorage.setItem(キー、JSON.stringify(val)); }; //関数 getLocalStorage(key){ を取得する val = JSON.parse(window.localStorage.getItem(key)); とします。 window.localStorage.removeItem(キー) 戻り値: }; //テストlet data = [ {name:'ナゲッツ'}, {name:'CSS 学習'}, {name:'js 学習'}, ]; setLocalStorage('STORAGEDATE',データ); a = getLocalStorage('STORAGEDATE'); とします。 3. オブジェクトのディープコピーを実装する 実際の開発では、元のデータに影響を与えることを恐れる場合は、任意の操作のためにデータのディープコピーを作成することがよくあります。実際、ディープコピーを実現するために JSON.stringify() と JSON.parse() を使用するのは良い選択です。 //ディープコピー関数 deepClone(data) { _data = JSON.stringify(データ) とします。 dataClone = JSON.parse(_data); dataClone を返します。 }; //テストlet arr = [1,2,3], _arr = deepClone(arr); ar[0] = 2; console.log(arr,_arr) //[2,2,3] [1,2,3] json.stringify() と json.parse() の違いと使い方についての記事はこれで終わりです。json.stringify() と json.parse() についての詳細は、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続きご覧ください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: mysql5.7.17 zip の解凍とインストールの詳細な手順
>>: MySQL レプリケーション テーブルの詳細とサンプル コード
図に示すように: テーブルデータこのようなツリーの場合、「Gao Yinrui」の下のすべてのノード...
質問docker で gdb を実行すると、ブレークポイントに到達しますが、ブレークポイントに入るこ...
Docker コンテナのネットワーク障害に対する 6 つの解決策注: 以下の方法は、コンテナ内のパブ...
序文通常、h5 ページを作成するときは、WeChat、QQ、Weibo などのエコシステム内でトラフ...
目次MySQLをインストールする環境変数の設定MySQLをインストールするmysqlをダウンロードし...
目次Nginx は 2 つの socket.io サーバーをプロキシします。 socket.ioの動...
少し前にSQLの独学を終え、MySQL 8.0.17をダウンロードしました。インストールして設定した...
目次docker システム df docker システム プルーンNoneオブジェクトをクリーンアッ...
イメージを作成する方法は 3 つあります。既存のイメージに基づいてコンテナを作成する、ローカル テン...
HTML はプレゼンテーションからコンテンツへの移行を試みており、コンテンツの意味(HTML) とプ...
このテクニックは、この記事から来ています - シルキーでスムーズなパフォーマンスでボックスシャドウを...
このセクションから、http モジュールの実装原理について説明します。http モジュールで非常に重...
目次ヘッドレスブラウザとは何ですか?なぜ「ヘッドレス」ブラウザと呼ばれるのでしょうか?ヘッドレスブラ...
この記事では、線形グラデーションの凹四角形の遷移効果の難しさやアイデアについて説明します。主に、凹四...
Apache では構成ファイルで Web ページまたは Web サイトの書き換えを簡単に設定できる...