ホームページ > 記事 > ウェブフロントエンド > 「eval」を使用せずに「Relaxed」JSON を解析するにはどうすればよいですか?
引用符で囲まれていないキーを使用した「リラックスした」構文に従う JSON データを解析することは、特に、潜在的に危険な eval の使用。
解決策の 1 つは、正規表現置換を使用して JSON 文字列をサニタイズすることです。引用符で囲まれていないキーと値のペアを引用符で囲まれた同等のペアに置き換えることで、標準構文に準拠した JSON 文字列を作成できます。
次の例を考えてみましょう。
var badJson = "{muh: 2}"; // Sanitize the JSON using regular expression var correctJson = badJson.replace(/(['"])?([a-z0-9A-Z_]+)(['"])?:/g, '"": '); // Now we can safely parse the corrected JSON JSON.parse(correctJson);
このアプローチにより、次のことが可能になります。セキュリティを損なったり、JSHint 警告をトリガーしたりすることなく、「緩和された」JSON データを解析し、テスト目的で eval に代わる便利で安全な代替手段を提供します。
以上が「eval」を使用せずに「Relaxed」JSON を解析するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。