부트캠프 React 과정 5.26

김진우·2023년 5월 26일
0

오늘의 목표

  • JavaScript 문법 종합반4주차 완강하기 (O)
  • 프로그래머스 나 백준 1문제 이상 풀기 (0)

오늘 배운것

  • addEventListener : 이것은 부모를 상속한다
  • promise, Generator(ES6),async/await
    이러한 방법들을 통해서 비동기적인 처리를 동기적으로 만들어줄수 있게끔 노력해 주고 있다.

오늘 어려웠던것
이문제를 async/await 리펙토링하는거였다.

function narutoIsNotOtaku() {
  let title = prompt("애니메이션 제목을 입력하세요.", "naruto");

    return loadJson(`https://animechan.vercel.app/api/random/anime?title=${title}`)
    .then(res => {
            alert(`${res.character}: ${res.quote}.`);
      return res;
    })
    .catch(err => {
      if (err instanceof HttpError && err.response.status == 404) {
        alert("일치하는 애니메이션이 없습니다. 일반인이시면 naruto, onepiece 정도나 입력해주세요!");
        return narutoIsNotOtaku();
      } else {
        throw err;
      }
    });
}
narutoIsNotOtaku();
async function narutoIsNotOtaku() {
    let title;
    let res;
    while (ture) {
        title = prompt("애니메이션 제목을 입력하세요.", "naruto");

        try {
            res = await loadJson(`https://animechan.vercel.app/api/random/anime?title=${title}`);
            break;
        }
        catch (err) {
            if (err instanceof HttpError && err.response.status == 404) {
                alert("일치하는 애니메이션이 없습니다. 일반인이시면 naruto, onepiece 정도나 입력해주세요!");
                
            } else {
                throw err;
            }
        }
    }
            alert(`${res.character}: ${res.quote}.`);
            return res;

리펙토리 하는거였는데 처음에 문제를 보고 async이걸 어디다 붙여야 될지 생각을 하고
그전에 썻던걸 어떻게 바꿔야 될지 생각을 해보았는데
해결 책이 나오지 않아서 강의를 듣고 다시 강의 하는거처럼 말하면서 적어보았습니다.
근데 다시 리펙토링을 하는 과정에서 html 브라우져 화면에 입력창이 안나왔다.
계속 찾던 와중 주석 처리를 해서 나오지 않은 부분을 보았는데
이러한 작은요소도 신경써야되는구나 라고 생각이 들었습니다.

-프로그래머스 문제-
정수 num1, num2가 매개변수로 주어질 때, num1을 num2로 나눈 몫을 return 하도록 solution 함수를 완성해주세요.
num1 num2 result
10 5 2
7 2 3
``
function solution(num1, num2) {

var sum = num1/num2;

return Math.floor(sum);

}
``
매일 매일 문제를 풀고있는데 쉬운문제임에도 막힌부분이있었다.
답이 2번째꺼가 3이 나오지 않았다 그래서 소수점 버리는 부분을 검색해서
답을 만들었다. Math.floor / Math.trunc() 등이 있는데 내가 알지 못한 문법을 사용함으로써 정답을 만들었다.
Math.floor / Math.trunc() 기억하고있겠다.

느낀점

  • 4주차를 들으면서 뒤편으로 갈수록 이해하기 힘들었다.
    먼가 아직 문장이 나오면 이해하고 풀어나가는게 미숙한거 같다. 5주차까지 다듣고 다시
    앞으로 넘어와서 리마인드 하면서 문장을 보고 이해하는 능력도 늘리고
    개념 적인것도 다시 들어보면서 하나하나 익혀 나가야 될거 같다는 생각이 많이 들었다.

0개의 댓글