
모던 자바스크립트 딥 다이브를 공부하다 문득 변수란 무엇이냐? 라고 했을 때, 막상 말로 설명하기는 어렵다고 느껴 책에서 찾아 정리한다. 물론 다른 용어들도 함께. 너무 당연하게 쓰고 있는 것들이 설명하려니 더 막막한 것 같다. 정의조차 제대로 알고있지 못한 채로 쓰고 있는 말과 표현들이 얼마나 많을까.
메모리 공간에서 값의 위치를 가리키는 상징적인 이름이다.
하나의 값을 저장하기 위해 확보한 메모리 공간 자체 또는 그 메모리 공간을 식별하기 위해 붙인 이름을 말한다.
흔히 변수가 변수 이름을 의미하는 경우가 많으며, 변수 이름을 식별자라고도 한다.
메모리 셀은 1바이트 단위로 데이터를 저장할 수 있으며, 셀마다 고유한 메모리 주소를 갖는다. 이들의 집합체를 메모리라 한다.
컴퓨터는 메모리 셀의 크기인 1바이트 단위로 데이터를 저장하거나 읽어들인다.
식(표현식)이 평가되어 생성된 결과
식을 해석해서 값을 생성하거나 참조하는 것
값으로 평가될 수 있는 문으로, 평가되면 새로운 값을 생성하거나 기존 값을 참조한다.
프로그램을 구성하는 기본 단위이자 최소 실행 단위이다.
변수에 할당이 가능한 문은 표현식인 문, 불가능한 문은 표현식이 아닌 문이다.
문법적인 의미를 가지며, 문법적으로 더 이상 나눌 수 없는 코드의 기본 요소
토큰이 모여 문이 된다. ex) 키워드, 식별자, 연산자, 리터럴, 세미콜론, 마침표 등
식별자와 값을 연결하는 과정
서버에서 웹사이트의 콘텐츠를 수집하기 위해 웹사이트에서 HTML 문서를 가져온 다음, 이를 가공해서 필요한 데이터만 추출하는 것
동적으로 생성한다는 의미는 프로그램이 시작할 때 객체를 미리 생성해두는 것이 아니라 그 객체를 필요로 하는 순간에 바로 생성한다는 뜻이다.
순수 함수를 통해 부수 효과(side effect)를 최대한 억제하여 오류를 피하고 프로그램의 안정성을 높이려는 프로그래밍 패러다임
객체의 상태를 나타내는 프로퍼티와 프로퍼티를 참조하고 조작할 수 있는 동작인 메서드를 하나로 묶는 것을 말한다. 캡슐화는 객체의 특정 프로퍼티나 메서드를 감출 목적으로 사용하기도 하는데 이를 정보 은닉이라 한다.