ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [위코드 35기]배열과 반복문
    프론트엔드 개발자가 될거야./js 2022. 6. 13. 16:29

    배열과 반복문은 함께 많이 쓰인다.
    배열과 반복문 문제를 풀 때 어려웠던 부분을 정리해두고자 한다.

    👀 07번 문제 👀

    • for문을 사용하여 getAllLetters 함수를 작성하세요.
    • 단어(str 인자)가 주어졌을 때 함수의 리턴값은 주어진 단어를 구성하는 모든 문자를 담고 있는 배열입니다.
    • 만약 빈 문자열이 주어졌다면, 빈 배열을 반환해야 합니다.
    let output = getAllLetters('Radagast');
    console.log(output); // --> ['R', 'a', 'd', 'a', 'g', 'a', 's', 't']

    ✍🏻 풀이 ✍🏻

    function getAllLetters(str) {
      // 아래의 코드를 수정하지 마세요.
      let strArray = [];  // 빈 문자열을 가진 배열
      
      // 아래에 코드를 작성해주세요
      for(let i = 0; i < str.length; i++){ // str로 받을 배열길이만큼 반복
        strArray[i] = str[i]; // str 배열의 문자열를 strArray 배열에 대입
      }
      
      // 아래의 코드를 수정하지 마세요.
      return strArray;
    }
    
    let output = getAllLetters('Radagast');
    console.log(output);
    // --> ['R', 'a', 'd', 'a', 'g', 'a', 's', 't']
    

    👀 08번 문제 👀
    처음 보는 사람은 숫자 0으로, 한번 봤던 사람은 숫자 1로 표기된 배열이 준비되어 있습니다.
    처음 보는 사람에게는 '안녕하세요' 라는 인사를, 한번 봤던 사람에게는 '또 만나네요'라는 인삿말을 남기려고 합니다.

    • helloBot이라는 함수를 만들어주세요.
    • for문을 사용하여 빈 result배열에 greetings에 들어있는 인삿말을 채워주세요.
    • 인자에는 0과 1로 이루어진 배열이 들어갑니다.
    let group1 = [0,1,1,0,0]
    helloBot(group1); // --> ['안녕하세요','또 만나네요','또 만나네요','안녕하세요','안녕하세요']

    ✍🏻 풀이 ✍🏻
    처음보는 느낌의 함수가 나와서 뭐지? 이거 어떻게 해석해야하지?
    peopel이 파라미터인가? 아닌가? 했는데 파라미터가 맞았다.
    이 함수는 '화살표함수' 이다.

    const helloBot = people => {
      let result = []; // 빈 배열 만들기
    
      for(let i = 0; i < people.length; i++) { // 앞으로 받을 배열의 길이 만큼 반복
        if(people[i] === 0) { // 0이면 
          result.push('안녕하세요'); // result배열에 '안녕하세요' 넣기
        } else { // 0이 아니면
          result.push('또 만나네요'); // result배열에 '또 만나네요' 넣기
        }    
      }
      return result; // 0이냐 1이냐에 따라 값이 다르게 들어가있겠군
    }
    
    let group1 = [0,1,1,0,0] // group1을 argument로 받자!
    let insaBot = helloBot(group1);
    console.log(insaBot);
    // 정답! --> ['안녕하세요','또 만나네요','또 만나네요','안녕하세요','안녕하세요']

    댓글

Designed by Tistory.