1. 다른 type의 변수를 Boolean Type으로 바꾸기 Boolean() 함수 !!(not not 연산자 - 부정의 부정) 부정의 부정은 긍정이기 때문에, 실제로 조건문안의 조건식에서 !!을 쓰나 쓰지 않으나 같은 결과값을 낸다. 그렇다면 !
NaN: Not a Number의 약어로 한국어로 해석하면 '숫자가 아니다'라는 뜻이지만, 실제로는 잘못된 수학 계산 또는 잘못된 숫자를 의미. 다음과 같이 숫자가 아닌 값에 연산을 수행하거나, 0을 0으로 나누면 NaN 출력NaN은 숫자형이지만 숫자가 아닌 값어떤 값
1. 기본형 데이터와 참조형 데이터 1) 상수와 불변값 불변값과 상수를 같은 개념으로 오해하기 쉬움 변수와 상수를 구분 짓는 변경 가능성의 대상은 변수 영역의 메모리 (한번 데이터 할당이 이뤄진 변수 공간에 다른 데이터를 재할당 할 수 있는지 여부) 불변성 여부를 구
실행할 코드에 제공할 환경 정보들을 모아놓은 객체동일한 환경에 있는 코드들을 실행할 때 필요한 환경 정보들을 모아 컨텍스트를 구성하고, 이를 콜 스택에 쌓아올렸다가, 가장 위에 쌓여있는 컨텍스트와 관련있는 코드들을 실행하는 식으로 전체 코드의 환경과 순서를 보장Vari
this는 실행컨텍스트는 함수가 호출할 때 생성, this는 함수를 호출할 때 결정됨전역공간에서 this는 전역 객체(window)전역 컨텍스트를 생성하는 주체가 전역 객체이기 때문전역변수를 선언 하면 자바스크립트 엔진은 이를 전역객체의 프로퍼티로도 할당window의
자바스크립트 코드는 기본적으로 순서대로(동기적으로) 실행됨setTimeOut, setInterval, addEventListener 와 같은 함수들은 비동기 실행 코드
1) call 메서드 2) apply 메서드 3) call / apply 메서드의 활용 4) bind 메서드 5) 별도의 인자로 this를 받는 경우
1. async, await 1) async, await이란? async와 await는 가장 최근에 나온 비동기 처리 패턴으로, 기존의 콜백함수와 프로미스 의 단점을 보완한 문법 2) Promise 예제를 통해 알아보는 Promise문법의 단점 Promise예제
클로저는 함수와 그 함수가 선언될 당시의 lexical environment의 상호관계에 따른 현상EnvironmentReference(ER): 식별자에 대한 정보OuterEnvironmentReference(외부정보): 현재 호출된 함수가 선언될 당시의 Lexcial
클로저란 어떤 함수A에서 선언한 변수a를 참조하는 내부함수B를 외부로 전달할 경우 A의 실행 컨텍스트가 종료된 이후에도 변수a가 사라지지 않는 현상고차함수 : 함수를 인자로 받거나 또는 함수를 반환함으로써 작동 하는 함수정보은닉: 어떤 모듈의 내부로직에 대해 외부로의
클로저는 중첩된 함수를 이용해 사용하는 방법이며 실행 컨텍스트가 끝나도 변수에 접근 가능하게 해주는 기능. 주의해야할점: 메모리 누수호이스팅은 변수나 함수 선언이 스코프의 최상단으로 끌어올려진 것 같은 현상, 선언 이전에 변수나 함수에 접근하려고 할 때 오류가 나지 않