favicon

Jayden { do: smite }

220802(화)

🪴 성장일지

행복한 이기주의자(웨인 다이어)의 내용에 자극받아 시작하는 소박한 성장기록

살아있는 꽃과 죽은 꽃은 어떻게 구별하는가?<br/> 성장하고 있는 것이 살아 있는 것이다.<br/> 생명의 유일한 증거는 성장이다!

🌳 키워드

BigInt 자료형

  • 길이에 상관없이 정수를 나타낼 수 있습니다. -(2e53 - 1)에서 (2e53 - 1)까지 외의 값들을 표현 가능
// 끝에 n을 붙여 표현 const bigInt = 1234567890123456789012345678901234567890n;

typeof 특이사항

typeof Math; // "object" (1) typeof null; // "object" (2) typeof alert; // "function" (3)
  1. Math는 수학 연산을 제공하는 내장 객체이기 때문
  2. null은 본래 null이라는 본연의 자료값이 있지만, 과거의 오류로 객체로 나옴. 하위 호환성 문제로 그대로 남겨둠.
  3. alert가 함수는 맞지만, 함수의 자료형은 객체. 이도 마찬가지로 과거의 오류이며 하위 호환성 문제로 그대로 남겨둠.(오히려 실무에서 유용하게 사용되기도 함)

setInterval과 setTimeout을 멈추는 방법(feat.아이디)

아이디는 타이머에 대한 반환값으로 이 값을 통해 타이머를 취소할 수 있음.(반드시 같은 함수여야함)<br/> 단, setTimeout의 경우 비동기 함수가 종료되기 전에 취소를 해야 의미가 있음.

let 아이디 = setInterval(함수, 밀리초); clearInterval(아이디); let 아이디 = setTimeout(함수, 밀리초); clearTimeout(아이디);

addEventListener와 removeEventListener

이벤트를 등록할 때의 함수와 이벤트를 제거할 때의 함수는 반드시 같은 함수여야함.<br/> 고차함수인 경우가 헷갈리게 되는데, 함수는 참조형 변수이기 때문

const test = (value) => () { console.log('고차함수', value); } 태그.addEventListener('click', test(1)); // 이벤트를 없앨 때, 틀린 예시 태그.removeEventListener('click', test(1)); // test(1) !== test(1)이기 때문! 같은 함수가 아님! //해결법 const test1 = test(1); 태그.addEventListener('click', test1); 태그.removeEventListener('click', test1);

flag 변수

마치 깃발을 꽂았다 빼는 거 같은 역할을 하여 붙여진 이름

let clickable = true; const clickBtn = () => { if (clickable) { 어쩌구 저쩌구 clickable = false; } 어쩌구 저쩌구 clickable = true; } // flag 변수가 true, false값을 왔다갔다하며 특정 이벤트 발생을 조율하는 식으로 사용
undefined

Copyright 2023. all rights reserved by Jayden