다음과 같은 짧은 JSON 객체가 있다고 가정합니다. -
const obj = {"name":"sam","age":"24","isMarried":"false"};
여기서 실수로 숫자 및 부울 값 중 일부가 문자열로 강제 변환되었습니다.
Number인 age 속성과 부울인 isMarried 속성과 같습니다. 우리의 임무는 그러한 객체를 받아서 잘못된 데이터 유형을 올바른 유형으로 올바르게 변경하는 함수를 작성하는 것입니다.
예시
이에 대한 코드는 -
const obj = { "name":"sam", "age":"24", "isMarried":"false" }; const convertToOriginal = (obj = {}) => { const keys = Object.keys(obj); for(let i = 0; i < keys.length; i++){ const key = keys[i]; const num = parseInt(obj[key], 10); const val = obj[key]; if(num && String(num) === val){ obj[key] = num; } else if(val === 'true' || val === 'false'){ obj[key] = Boolean(val); }; }; }; convertToOriginal(obj); console.log(obj);
출력
콘솔의 출력은 -
{ name: 'sam', age: 24, isMarried: true }