JavaScript는 HTML, CSS와 함께 웹을 구성하는 요소 중 하나로 웹 브라우저에서 동작하는 유일한 프로그래밍 언어이며, 개발자가 별도의 컴파일 작업을 수행하지 않는 인터프리터 언어이다.대부분의 브라우저에서 사용되는 인터프리터는 전통적인 컴파일러 언어처럼 명시
변수는 프로그래밍 언어에서 데이터를 관리하기 위한 핵심 개념이다.위에서 숫자 10과 20은 메모리상의 임의의 메모리 주소에 기억(저장)되고 CPU는 이 값을 읽어 연산을 수행한다. 이 때 연산의 결과값으로 생성되는 값인 30도 메모리 주소에 저장된다.메모리하지만 CPU
변수 선언은 메모리 공간을 확보하고 변수명과 메모리 공간을 연결하고 변수를 생성한다.변수 선언문은 아래와 같다.varletconst과거 var를 사용했지만 ES6가 나오고서는 let, const를 사용한다.ES6(ECMAScript 2015) 도입 이전까지 var 명령
과거 javascript에서의 변수 선언은 var 하나였으나
JavaScript에서 호이스팅(hoisting)이란, 인터프리터가 변수와 함수의 메모리 공간을 선언 전에 미리 할당하는 것을 의미 - 출처: mdn web docsJavascript는 인터프리터 언어로 코드가 위에서부터 한줄씩 실행된다.근데 위의 내용에서는 오류가
실행 컨텍스트는 자바스크립트의 동작 원리의 핵심 개념이다. 자바스크립트 동작 원리 전역 객체 생성 전역 소스 코드 평가 1-1 전역 실행 컨텍스트 생성 1-2 전역 렉시컬 환경 생성 전역 환경 레코드 생성 객체 환경 레코드 생성
데이터 타입(줄여서 ‘타입’)은 값의 종류를 말하며, 자바스크립트의 모든 값은 데이터 타입을 갖는다. 데이터 타입의 필요성 값을 저장할 때 확보해야 하는 메모리 공간의 크기를 결정하기 위해 값을 참조할 때 한 번에 읽어 들여야 할 메모리 공간의 크기를 결정하기 위해
함수와 lexical 환경의 조합으로 함수가 생성될 당시의 외부 변수를 기억하여 생성 이후에도 계속 접근 가능한 것먼저 자바스크립트의 실행 컨텍스트를 먼저 알고 보면 좋다.아래 소스코드를 자바스크립트 엔진이 어떻게 동작 시키는지 확인해보면 아래와 같다.전역 소스코드를