👉 함수 안에 있는 선언들을 모두 끌어올려서 해당 함수 유효 범위의 최상단에 선언하는 것👉 var 변수 선언과 함수선언문에서만 호이스팅이 일어난다. var 변수/함수의 선언만 위로 끌어 올려지며, 할당은 끌어 올려지지 않는다. let/const 변
👉 Temporal Dead Zone 의 약자로 우리 말로 번역하면 일시적 사각지대라는 의미이며, 스코프 시작 ~ 초기화 시작 사이의 구간을 의미한다.다른 말로 변수가 선언되고 변수의 초기화가 이루어지기 전까지의 구간👉const 변수 선언부터 시작해보자. 변수를
scope, hoisting, this, function, closure 등의 동작원리를 담고 있는 자바스크립트의 핵심원리실행 컨텍스트는 실행 가능한 코드가 실행되기 위해 필요한 환경코드가 실행되는 위치를 설명한다는 뜻의 Execution Context자바스크립트 엔진
🔎 불변객체 👉 상태값을 수정할 수 없는 객체를 의미합니다. 즉, 객체를 처음 생성(초기화) 후에는 객체가 가지는 상태를 변경할 수 없는 것을 의미합니다. 이러한 불변객체의 특성은 어플리케이션을 만드는데 있어 많은 도움을 줍니다. 불변 객체는 상태가 변하지 않기
👉 자바스크립트는 타입이 매우 유연한 언어이다. 때문에 자바스크립트 엔진이 필요에 따라 암시적변환을 혹은 개발자의 의도에 따라 명시적변환을 실행한다. 암시적 변환이란 자바스크립트 엔진이 필요에 따라 자동으로 데이터 타입을 변환시키는 것이다.산술연산자더하기(+) 연산
얕은 복사는 객체의 참조값(주소 값)을 복사하고, 깊은 복사는 객체의 실제 값을 복사한다.자바스크립트에서 값은 원시값과 참조값 두 가지 데이터 타입의 값이 존재한다.자바스크립트에서 원시 타입(primitive type)의 값은 새로운 메모리 공간에 독립적인 값을 저장하
데이터 타입의 종류는 크게 기본형과 참조형 2가지로 나뉜다. 기본형과 참조형을 구분 짓는 가장 큰 점은 실제 값 전체 복사 vs 실제 값이 들어있는 주소 값 복사이다. 기본형 (copy value of a)let a = 1;let b = a;a += 10;console
💡 자바스크립트와 파이썬은 인터프리터 언어이며 자바는 컴파일 언어.컴파일 언어는 코딩을 마치고 나면 프로그래밍 언어로 짠 코드를 컴파일이란 과정 통해서 다른 형태로 바꿔주게 된다. 이 컴파일이라는 작업을 거치고 나서 그 결과물을 실행하는 것이 컴파일 언어의 특성인터프
먼저 데이터 바인딩이란 뷰와 모델에 있는 데이터를 동일하게 만들어주는 것을 의미합니다.만약 js에서 데이터가 변경되어도 html에서 변경되지 않는다면 사용자는 잘못된 데이터를 보게 됩니다.데이터 바인딩은 이러한 문제를 해결해줍니다.vanila javascript로 예를
파일이 저장 장치에 저장되어 있지만 메모리에는 올라가지 않은 정적인 상태를 말한다.아직 운영체제가 프로그램에게 독립적인 메모리 공간을 할당해주지 않았다.모든 프로그램은 운영체제가 실행되기 위한 메모리 공간을 할당해 줘야 실행될 수 있다.아직 실행되지 않고 가만히 있다는