본문 바로가기

나를 성장시키는 알고리즘

데이터 타입이 배열인 변수의 문자열 만들기(JSON 연습)

문제


데이터 타입이 배열인 변수를 JSON 형태로 바꾸자(쉽게 말해    [1,2,3,4]  =>   '[ 1,2,3,4]'

 

 

푸는 순서


 

 

 

 

 

코드


1. 문자열의 형태를 생각해서 일일이 붙이기 

if( typeof obj === 'object'){
    
    //배열인경우
    
    if(Array.isArray(obj)){

      //[4,5,6]=>"[4,5,6]"를 만들어라

      //result에 꺽쇄를 넣자

      result +="[";
      //요소를 넣기 위해서는 하나씩 반복해서 문자열화 시켜서 더해주면 된다.

      for(let i=0; i<obj.length; i++){

        result +=stringifyJSON(obj[i])
       //마지막 요소가 아닐 때까지 쉼표를 넣어주자
       if(!(i === obj.length-1)){
         result +=",";
       };
        
      }

      result +="]";
      return result;
    }

2. foreach를 써서 요소에 접근한 후 요소를 판단하는 재귀함수를 사용해서 결과 값을 도출.

 

   if(Array.isArray(obj)){

      // 새로운 배열을 정의한 후 거기에 하나씩 요소를 넣고
      let arrResult=[]
      //각각의 요소에 접근하여 배열을 만들어줘야 한다.만약에 요소가 string이면 null이면 .. 등등 그래서 재귀를 써야 함.
      obj.forEach(function(el){
        arrResult.push(stringifyJSON(el))
      })
      return `[${arrResult}]`



      // 마지막에 '${}' 안에 데이터를 넣어주면 됨.





    }