따옴표가 없는 키를 사용하여 "완화" 구문을 따르는 JSON 데이터를 구문 분석하는 것은 어려운 일입니다. 특히 잠재적으로 위험한 eval 사용.
한 가지 해결책은 정규식 대체를 사용하여 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`을 사용하지 않고 \'Relaxed\' JSON을 어떻게 구문 분석할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!