[10/29/2022] Today, I Learned

유영준·2022년 10월 29일
post-thumbnail

자바스크립트의 기본 개념동작 원리를 정확히 이해하는 것이 중요!


개인적인 공부를 하면서 중요한 내용을 정리한 형식이기 때문에 오류가 있을 수 있습니다.
피드백 주시면 정말 감사하겠습니다.


오늘 배운 내용

  • 타이머
  • 비동기 프로그래밍
  • Ajax
  • Rest API
  • 프로미스
  • 제너레이터와 async/await
  • 에러처리
  • 모듈

알고 있던 내용

  • setTimeout 함수는 두 번째 인수로 전달받은 시간으로 단 한번 동작하는 타이머를 생성한다
  • 현재 실행 중인 태스크가 종료되지 않은 상태라 해도 다음 태스크를 곧바로 실행하는 방식을 비동기 처리라고 한다
  • Ajax란 자바스크립트를 사용하여 브라우저가 서버에게 비동기 방식으로 데이터를 요청하고, 서버가 응답한 데이터를 수신하여 웹페이지를 동적으로 갱신하는 프로그래밍 방식을 말한다
try {
	/**
	 * 정상이라면 이 코드는 아무런 문제없이 블록의 시작부터 끝까지 실행된다.
	 * 하지만 경우에 따라 예외가 발생할 수 있다.
	 * 예외는 throw 문에 의해 직접적으로 발생할 수도 있고,
	 * 또는 예외를 발생시키는 메서드의 호출에 의해 발생할 수도 있다.
	 */
} catch (e) {
	/**
	 * 이 블록 내부의 문장들은 오직 try 블록에서 예외가 발생할 경우에만 실행된다.
	 * 이 문장들에선 지역 변수 e를 사용하여 Error 객체 또는 앞에서 던진 다른 값을 참조할 수 있다.
	 * 이 블록에서는 어떻게든 그 예외를 처리할 수도 있고,
	 * 그냥 아무것도 하지 않고 예외를 무시할 수도 있고,
	 * 아니면 throw 를 사용해서 예외를 다시 발생시킬 수도 있다.
	 */
} finally {
	/**
	 * 이 블록에는 try 블록에서 일어난 일에 관계없이 무조건 실행될 코드가 위치한다.
	 * 이 코드는 try 블록이 어떻게든 종료되면 실행된다.
	 * try 블록이 종료되는 상황은 다음과 같다.
	 *   1) 정상적으로 블록의 끝에 도달했을 때
	 *   2) break, continue 또는 return 문에 의해서
	 *   3) 예외가 발생했지만 catch 절에서 처리했을 때
	 *   4) 예외가 발생했고 그것이 잡히지 않은 채 퍼져나갈 때
	 */
}

몰랐던 내용

  • 디바운스는 짧은 시간 간격으로 발생하는 이벤트를 그룹화해서 마지막에 한 번만 이벤트 핸들러가 호출되도록 한다
  • REST는 HTTP를 기반으로 클라이언트가 서버의 리소스에 접근하는 방식을 규정한 아키텍처고, REST API를 기반으로 서비스 API를 구현한 것을 의미한다
  • 프로미스는 비동기 처리 상태와 처리 결과를 관리하는 객체다
  • finally 메서드의 콜백 함수는 프로미스의 성공 또는 실패와 상관없이 무조건 한 번 호출된다
  • 제너레이터는 코드 블록의 실행을 일시 중지했다가 필요한 시점에 재개할 수 있는 특수한 함수다
  • async 함수 내에서 catch 문을 사용해서 에러 처리를 하지 않으면 async 함수는 발생한 에러를 reject하는 프로미스를 반환한다
profile
프론트엔드 개발자 준비 중

0개의 댓글