다음과 같이 한 쌍의 문자를 포함하는 특별한 종류의 문자열이 있습니다. −
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": {} } } } } }