오늘의 키워드
밑줄 친 부분
<aside>
🏷️ 02장. 자바스크립트란?
</aside>
- 마이크로소프트가 자바스크립트의 파생 버전인
JScript
를 인터넷 익스플로러 3.0에 탑재하면서 JScript
와 자바스크립트가 표준화되지 못하고 적당히 호환되었다. 이로 인해 크로스 브라우징 이슈가 발생하기 시작했고, ECMA에 자바스크립트에 표준화를 요청하면서 자바스크립트는 ECMAScript로 명명되었다. (p07)
<aside>
🏷️ 03장. 자바스크립트 개발 환경과 실행 방법
</aside>
- 모든 브라우저와 Node.js는 자바스크립트 엔진을 내장하고 있다. 자바스크립트 엔진은 자바스크립트를 해석하고 실행할 수 있기 때문에 자바스크립트는 브라우저 환경 또는 Node.js 환경에서 동일하게 실행된다. (p17)
- 단, 브라우저는 웹 페이지를 화면에 렌더링 하는 것이 주 목적이고**, Node.js는 브라우저 외부에서 자바스크립트 실행 환경을 제공하는 것**이 주 목적이기 때문에 ECMAScript 이외의 추가로 제공하는 기능은 호환되지 않는다. (p17)
<aside>
🏷️ 04장. 변수
</aside>
- 컴퓨터는 CPU를 사용해 연산하고, 메모리를 사용해 데이터를 기억한다. 메모리는 데이터를 저장할 수 있는 메모리 셀의 집합체로, 메모리 셀 하나의 크기는 1바이트(8비트)이고 컴퓨터는 메모리 셀의 크기인 1바이트 단위로 데이터를 저장하거나 읽어들인다. (p35)
- 값이 저장될 메모리 주소는 코드가 실행될 때 메모리 상황에 따라 임의로 결정되므로 동일한 코드를 실행하더라도 코드가 실행될 때마다 값이 저장될 메모리 주소가 변경된다. (p36)
- 따라서 메모리 주소를 통해 값에 직접 접근하는 방법은 올바르지 않기 때문에 프로그래밍 언어는 기억하고 싶은 값을 메모리에 저장하고, 저장된 값을 읽어 들여 재사용하기 위해 변수라는 매커니즘을 제공한다. (p36)
- 변수는 하나의 값을 저장하기 위해 확보한 메모리 공간 자체 또는 그 메모리 공간을 식별하기 위해 붙인 이름을 말한다. (= 값의 위치를 가리키는 상징적인 이름) (p36)
- 변수 이름을 통해 변수에 저장된 값의 의미를 명확히 할 수 있기 때문에 잘 작성된 변수명은 가독성을 높이는 효과가 있다. (p38)
- 할당(assignment): 변수에 값을 저장하는 것 / 참조(reference): 변수에 저장된 값을 읽어 들이는
변수 선언 == 변수 생성
, 값을 저장하기 위해 메모리 공간을 확보하고 변수 이름과 확보된 메모리 공간의 주소를 연결해서 값을 저장할 수 있게 준비한다. 변수를 사용하려면 반드시 선언이 필요하고 var
let
const
키워드를 사용한다.(p39)
- var 키워드를 사용하여 변수를 선언한 이후, 변수에 값을 할당하지 않아도 확보된 메모리 공간에는 자바스크립트 엔진에 의해
undefined
라는 값이 암묵적으로 할당되어 초기화된다. (p41)