JSON에서 줄 바꿈 처리: 평가 문제 방지
JavaScript에서 JSON 데이터로 작업할 때 파싱을 피하기 위해 줄 바꿈을 효과적으로 처리하는 것이 필수적입니다. 오류. 줄바꿈이 포함된 JSON 데이터를 객체로 변환하려는 시도가 eval과 JSON.parse를 모두 사용하여 실패하는 다음 예를 생각해 보세요.
var data = '{"count" : 1, "stack" : "sometext\n\n"}'; var dataObj = eval('('+data+')'); // This approach is discouraged
이 문제는 문자열에 줄바꿈(n)이 있기 때문에 발생합니다. JSON 데이터 내에서 줄 바꿈으로 잘못 해석되어 평가 프로세스가 조기에 종료되고 "종료되지 않은 문자열 리터럴" 오류가 생성됩니다.
이 문제를 해결하려면 문제를 해결하고 JSON 데이터를 객체로 성공적으로 변환하려면 개행 문자를 두 배로 늘려 이스케이프하는 것이 중요합니다. 이렇게 하면 줄 바꿈이 JSON 데이터의 일부로 유지되고 줄 바꿈으로 해석되지 않습니다. 수정된 코드는 다음과 같습니다.
var data = '{"count" : 1, "stack" : "sometext\n\n"}'; var dataObj = JSON.parse(data);
개행 문자를 이스케이프하면 JSON 파서가 데이터를 올바르게 해석하고 구문 분석 오류 없이 원하는 개체를 생성할 수 있습니다.
위 내용은 구문 분석 오류를 방지하기 위해 JSON에서 줄 바꿈을 올바르게 처리하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!