부트캠프 React 과정 6.20

김진우·2023년 6월 20일
0

오늘목표

  • 리엑트숙련주차강의 20강까지듣기 (O)
  • 알고리즘문제 1문제풀기 (O)

오늘배운것

  • 정예반JavaScript특강 : DOM조작해보기 , 이벤트만들기
    document.querySelector().addEventListener('이벤트이름' , ()=>{
    실행시킬 것} : 원래 알고 있었는데 혼자서 안보고 만들어보니. 개념이 확실하지 않았구나 라고 생각을 했다.

  • parseInt () : 숫자형식으로 바꿀수가 있다.

오늘어려운것

  • 정수 배열 arr가 주어집니다. arr의 각 원소에 대해 값이 50보다 크거나 같은 짝수라면 2로 나누고, 50보다 작은 홀수라면 2를 곱합니다. 그 결과인 정수 배열을 return 하는 solution 함수를 완성해 주세요.
    이문제를 풀었는데
    //1. 50보다 크거나 같은 짝수일 경우에만 2로나누고
    // 1-1.배열을 반복문으로돌려서 50보다 큰수 이면서 짝수면 2로나누고
    // 1-2. 50보다 작으면서 홀수라면 2를 곱하면 되지않을까..?
    // 결과값이 [0,0,0,0,0,0] 이 나왔다.
    vscode를 찍어보니 처음 조건식에서 부터 [0,0,0,0,0,0] 이렇게나왓고
    retrun 값은 정의되어있지 않다고 나왔다.
    그래서 다시 생각을 하고 풀었는데 결과값이 [2,2,6,50,99,49]이나와야되는데
    [2,2,6,50,100,99,49,98]가나왔다. 결국

``

function solution(arr) {
const answer = [];
for(let i = 0; i<arr.length; i++){
if(arr[i]>=50 && arr[i] % 2 ===0){
answer.push(arr[i] / 2)
}else if(arr[i] < 50 && arr[i] % 2 === 1){
answer.push(arr[i] * 2)
}else{
answer.push(arr[i])
}
}
return answer;
}
``

이렇게 풀었는데 if else if else 를 사용해서 풀어야 됬다
근데 나는 if문의 if문을 한번더 쓰고 else를 사용해서 정답에 하나가 더 출력되서 나왔다.
이런 사소한것도 생각을 더 하고 풀어야 겠다.

``

function solution(arr) {
return arr.map((num)=>{
if(num >= 50 && num %2 ===0) return num /2;
if(num < 50 && num % 2 ===1) return num *2;
return num;
})
}
``

이건 다른사람 풀이였는데 map함수를 사용해서 돌려서 문제를 해결했다.
이런 방법도 생각해서 사용할수있는곳에 적용해서 다음부터 풀어봐야겠다.

느낀점

  • 오늘 리엑트숙련주차 강의를 들었는데 정말한꺼번에 많은 것들을 들으니깐
    혼란스러웠다. 많은 react Hook과 react router Hook에 대해서 듣고 수업을 진행했는데.
    이 다양한 것들을 한번에 듣다보니 어디서 사용을 해야되는지 아직 전혀 감은 오지않았다.
    이것들을 강의 문서를 한번더 읽어보면서 조금이나마 이해하고 어디서 사용하는지 정도는 알고있어야 겠다고 생각을 했다.

  • 그리고 오늘 정예반 수업이 처음으로 시작했는데 아직 첫수업이라서 그런지 대체적으로
    쉬운 부분이 많았다. 이수업을 하면서 직접 만들어보고 튜텨님이 확인을 하고 또한 잘 안되는 분들의 에러 코드를 같이 보면서 나도 저런 에러를 만나면 이런식으로 접근을 해봐야겠다고 생각이 들수있을꺼 같았고 오늘처럼 하나하나 자바스크립트또한 탄탄하게 기초를 만들고리엑트와 함께 나아가야 겠다고 생각이 들었습니다.

0개의 댓글