JavaScript - 문제 미리보기
문제 761
medium
다음 코드에서 `JSON.parse()`에 reviver 함수를 사용하는 목적은?
```javascript
const text = '{"name":"John", "birth":"1986-12-14", "city":"New York"}';
const obj = JSON.parse(text, function (key, value) {
if (key == "birth") {
return new Date(value);
} else {
return value;
}
});
```
```javascript
const text = '{"name":"John", "birth":"1986-12-14", "city":"New York"}';
const obj = JSON.parse(text, function (key, value) {
if (key == "birth") {
return new Date(value);
} else {
return value;
}
});
```
정답: B
`JSON.parse()`의 두 번째 매개변수인 reviver 함수는 파싱 과정에서 각 속성값을 변환할 수 있게 해줍니다.
이 예제에서는:
• JSON에서는 Date 객체를 직접 표현할 수 없어서 문자열("1986-12-14")로 저장됩니다
• reviver 함수를 통해 "birth" 속성의 문자열 값을 실제 Date 객체로 변환합니다
• 다른 속성들은 그대로 반환합니다
이렇게 하면 `obj.birth`는 문자열이 아닌 실제 Date 객체가 되어 날짜 관련 메서드들을 사용할 수 있습니다.
이 예제에서는:
• JSON에서는 Date 객체를 직접 표현할 수 없어서 문자열("1986-12-14")로 저장됩니다
• reviver 함수를 통해 "birth" 속성의 문자열 값을 실제 Date 객체로 변환합니다
• 다른 속성들은 그대로 반환합니다
이렇게 하면 `obj.birth`는 문자열이 아닌 실제 Date 객체가 되어 날짜 관련 메서드들을 사용할 수 있습니다.
💡 학습 팁
이 문제를 포함한 JavaScript 과목의 모든 문제를 순차적으로 풀어보세요. 진행상황이 자동으로 저장되어 언제든지 이어서 학습할 수 있습니다.