[解決済み] Prototype.jsでJSON.stringify()配列の異形性
2023-06-10 15:03:18
質問
私は、私のjsonシリアライゼーションで何がうまくいかなかったのかを見つけようとしています。私のアプリの現在のバージョンと古いバージョンを持っており、JSON.stringify()が動作する方法でいくつかの驚くべき違いを見つけています(json.orgからのJSONライブラリを使っています)。
私のアプリの古いバージョンでは
JSON.stringify({"a":[1,2]})
はこれを与えてくれます。
"{\"a\":[1,2]}"
を新しいバージョンで表示します。
JSON.stringify({"a":[1,2]})
はこれを与えてくれます。
"{\"a\":\"[1, 2]\"}"
新しいバージョンでは、同じライブラリが配列の括弧を引用符で囲むようになったのですが、何が変わったのでしょうか?
どのように解決するのですか?
JSON.stringifyは最近いくつかのブラウザで出荷されているので、PrototypeのtoJSONの代わりにこれを使うことをお勧めします。そして、window.JSON && window.JSON.stringify をチェックし、それ以外の場合は json.org ライブラリをインクルードするだけです(via
document.createElement('script')
...). 非互換性を解決するには、使用します。
if(window.Prototype) {
delete Object.prototype.toJSON;
delete Array.prototype.toJSON;
delete Hash.prototype.toJSON;
delete String.prototype.toJSON;
}
関連
-
[解決済み] 配列から特定の項目を削除するにはどうすればよいですか?
-
[解決済み] JavaScript で配列に値が含まれているかどうかを確認するにはどうすればよいですか?
-
[解決済み] jQueryでチェックボックスに "checked "を設定する
-
[解決済み] 配列に特定のインデックスで項目を挿入する方法 (JavaScript)
-
[解決済み] cURLでJSONデータをPOSTするにはどうすればよいですか?
-
[解決済み】オブジェクトの配列を文字列のプロパティ値でソートする
-
[解決済み】配列に何かを追加する方法は?
-
[解決済み] なぜJavaScriptでは!{}[true]がtrueに評価されるのですか?
-
[解決済み] CORS: 認証モードは 'include' です。
-
[解決済み] Javascript の parseInt() で先頭のゼロを削除する。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] なぜJavaScriptでは!{}[true]がtrueに評価されるのですか?
-
[解決済み] javascript の関数から `undefined` と `null` のどちらを返すのが良いのでしょうか?
-
[解決済み] 文字列が空白であるかどうかをチェックする
-
[解決済み] react-routerのハッシュフラグメントからクエリパラメータを取得する
-
[解決済み] AJAX Mailchimp サインアップフォームの統合
-
[解決済み] ECMAScriptとは?
-
[解決済み] モデルフェッチ時に1をtrueに、0をfalseに変換する方法
-
[解決済み] javascriptでオプションのパラメータを扱う
-
[解決済み] Node.jsのES6クラスをrequireで作る
-
[解決済み] javascriptのキャンバスで画像をリサイズする (スムーズ)