[解決済み] オブジェクトの文字列をJSONに変換する
2022-04-24 21:02:20
質問
JavaScript(またはjQuery)を使って、オブジェクトを記述した文字列をJSON文字列に変換するにはどうすればよいですか?
例 これを変換する ( NOT を有効なJSON文字列とする)。
var str = "{ hello: 'world', places: ['Africa', 'America', 'Asia', 'Australia'] }"
をこの中に入れてください。
str = '{ "hello": "world", "places": ["Africa", "America", "Asia", "Australia"] }'
を使うのは避けたいところです。
eval()
可能であれば
解決方法は?
信頼できるソースからの文字列である場合
を使用することができます。
eval
では
JSON.stringify
という結果になります。このように
var str = "{ hello: 'world', places: ['Africa', 'America', 'Asia', 'Australia'] }";
var json = JSON.stringify(eval("(" + str + ")"));
ただし
eval
で囲まれていないと、オブジェクトではなくブロックとしてパースされます。
また、質問の下のコメントにあるように、オブジェクトを最初から有効なJSONでエンコードして、パース、エンコード、そしておそらくパースすることを避ける方がずっと良いと思います。 また . HTMLはシングルクォートの属性をサポートしています(文字列の中にシングルクォートがある場合は必ずHTMLエンコードしてください)。
関連
-
[解決済み] 正しいJSONコンテンツタイプは何ですか?
-
[解決済み] JSONでコメントを使用することはできますか?
-
[解決済み] JavaScriptで文字列が部分文字列を含むかどうかを確認する方法は?
-
[解決済み] JavaScriptでオブジェクトをディープクローンする最も効率的な方法は何ですか?
-
[解決済み] なぜGoogleはJSONレスポンスにwhile(1);を前置するのでしょうか?
-
[解決済み] JavaScriptのオブジェクトにキーが存在するかどうかをチェックする?
-
[解決済み] JavaScriptでJSONをきれいに印刷する
-
[解決済み] JSON文字列を安全にオブジェクトに変換する
-
[解決済み] JSオブジェクトをJSON文字列に変換する
-
[解決済み】未定義のオブジェクトプロパティを検出する
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
Vueがechartsのtooltipにクリックイベントを追加するケーススタディ
-
要素ツリー制御によるvueTreeテーブル
-
Vueの要素ツリーコントロールに破線を追加する説明
-
jsを使った簡単な照明スイッチのコード
-
vueのグローバルがscss(mixin)を導入。
-
Vueの「データを聴く」原則を解説
-
[解決済み】Node.jsで "Cannot find module "エラーを解決するには?
-
[解決済み】「.addEventListener is not a function」なぜこのエラーが発生するのか?
-
フロントエンド非同期(アシンク)ソリューション(全ソリューション)
-
[解決済み】Uncaught SyntaxError: JSON.parse で予期しないトークンが発生した。