Computer >> 컴퓨터 >  >> 프로그램 작성 >> JavaScript

JavaScript에서 숫자 또는 부울 유형 JSON 객체를 문자열 유형에서 원본으로 변환

<시간/>

다음과 같은 짧은 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 }