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

JavaScript에서 중첩 JSON 객체 생성

<시간/>

다음과 같이 한 쌍의 문자를 포함하는 특별한 종류의 문자열이 있습니다. −

const str = "AABBCCDDEE";

이 문자열을 기반으로 다음과 같은 개체를 구성해야 합니다.

const obj = {
   code: "AA",
   sub: {
      code: "BB",
      sub: {
         code: "CC",
         sub: {
            code: "DD",
            sub: {
               code: "EE",
               sub: {}
            }
         }
      }
   }
};

문자열의 고유한 각 쌍에 대해 새 하위 개체가 있고 모든 수준의 code 속성이 특정 쌍을 나타냅니다.

재귀적 접근 방식을 사용하여 이 문제를 해결할 수 있습니다.

문자열을 재귀적으로 반복하여 특정 커플을 선택하고 새 하위 개체를 할당합니다.

따라서 이 함수의 코드를 작성해 보겠습니다 -

예시

이에 대한 코드는 -

const str = "AABBCCDDEE";
const constructObject = str => {
   const res = {};
   let ref = res;
   while(str){
      const words = str.substring(0, 2);
      str = str.substr(2, str.length);
      ref.code = words;
      ref.sub = {};
      ref = ref.sub;
   };
   return res;
};
console.log(JSON.stringify(constructObject(str), undefined, 4));

출력

콘솔의 출력은 다음과 같습니다. -

{
   "code": "AA",
   "sub": {
      "code": "BB",
      "sub": {
         "code": "CC",
         "sub": {
            "code": "DD",
            "sub": {
               "code": "EE",
               "sub": {}
            }
         }
      }
   }
}