[TIL] 0117

yoon Y·2022년 1월 17일
0

2022 - TIL

목록 보기
16/109

오늘 학습한 것

  • 다익스트라 알고리즘 공부 및 잘된 코드 분석
  • 타입스크립트 돔 조작 관련 내용 학습
  • 디바운스, 쓰로틀링

다익스트라 알고리즘

  • 노드에는 출발 노드로부터의 거리가 담긴다
    • 이전 노드에 저장 된 거리 + 간선에 담긴 거리
  • 출발 노드에서 특정 노드로 가는 여러 경우가 있을 경우 가장 적은 비용으로 갱신한다
  • queue구조는 방문할 노드를 차례로 담고, shift해서 방문한다
    • 근접한 것들부터 방문(bfs)

타입스크립트 돔 조작 관련 내용 학습

  • 돔은 union타입이기 때문에 조작하려면 하나의 타입으로 narrowing해줘야 한다
  • instanceof - 가장 많이 쓰는 방법
    • 해당 돔의 속성이 어떤 타입에 종속되어있는지 잘 따져야 함
    • querySelector로 get할 경우 element타입으로 설정됨
  • optional chaning - ?. 연산자
    • 신문법
    • 해당 객체에 접근하려는 속성이 존재하면 출력 or 실행, 없다면 undefined를 반환

디바운스, 쓰로틀링

  • 이벤트를 처리를 조절하는 기법들
  • 디바운스
    • 주로 input이벤트에서 사용
    • 함수가 여러번 호출되면 가장 마지막 호출만 실행시키는 것
    • 이벤트가 일어나고 특정 시간 이후(카운트 설정)에 리스너함수를 실행시킴
    • 이벤트가 일어날 때마다 카운트를 리셋
  • 쓰로틀링
    • 주로 scroll이벤트에서 사용
    • 함수가 호출되면 특정 시간 동안은 다시 호출되지 않도록 하는 것
    • 특정 시간마다 정기적으로 함수가 호출되도록 함
    • 카운트를 걸어놓은 함수가 있는 동안은 함수 호출이 되지 않게 하고
    • 설정한 시간이 지나면 함수를 실행시키고 다시 카운트를 건다
profile
#프론트엔드

0개의 댓글