예외
text 인수를 수정하여 JSON 구문을 따르도록 합니다. 자세한 내용은 JSON 개체의 BNF 구문 표기법을 참조하십시오.예를 들어, 응답이 순수 JSON이 아닌 JSONP 형식으로 된 경우 응답 개체에서 다음 코드를 사용해 보십시오. text 인수가 JSON.stringify와 같은 JSON 규격 구현으로 serialize되는지 확인합니다. 구문 오류 확인에 유용한 JSLint와 같은 JSON 유효성 검사기에서 text 인수를 실행합니다.
예제
다음 예제에서는 JSON.stringify를 사용하여 배열을 JSON 문자열로 변환한 다음 JSON.parse를 사용하여 문자열을 다시 배열로 변환합니다.
reviver 함수는 ISO(International Organization for Standardization) 날짜 문자열의 JSON 표현을 UTC(협정 세계시) 형식 Date 개체로 변환하는 경우에 사용됩니다. 이 예제에서는 JSON.parse를 사용하여 ISO 형식의 날짜 문자열을 deserialize합니다. dateReviver 함수는 ISO 날짜 문자열처럼 형식이 지정된 멤버의 Date 개체를 반환합니다.
var jsontext = '{ "hiredate": "2008-01-01T12:00:00Z", "birthdate": "2008-12-25T12:00:00Z" }'; var dates = JSON.parse(jsontext, dateReviver); document.write(dates.birthdate.toUTCString()); function dateReviver(key, value) { var a; if (typeof value === 'string') { a = /^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2}(?:\.\d*)?)Z$/.exec(value); if (a) { return new Date(Date.UTC(+a[1], +a[2] - 1, +a[3], +a[4], +a[5], +a[6])); } } return value; };