책정리/Deep Dive Javascript 13

자바스크립트에서 undefined와 null의 차이

var score; 다음과 같이 변수를 선언할 때, 자바스크립트는 해당 메모리 공간을 undefiend로 초기화한다. 따라서 변수를 선언한 이후 값을 할당하지 않으면, undefined가 반환된다. 따라서, 변수를 참조했을 때 undefined가 반환된다면, 선언 이후 값이 할당된 적 없는 초기화되지 않은 변수라는 것을 알 수 있다. null은 이와 다르게 변수에 값이 없다는 것을 명시하고 싶을 때 사용해야 한다. 변수에 null을 할당하는 것은 이전에 할당되어 있던 값에 대한 참조를 명시적으로 제거하는 것이며, 자바스크립트 엔진은 이 공간에 대해 가비지 콜렉션을 수행할 것이다. 예시로, document.querySelector 메서드는 조건에 부합하는 HTML 요소를 검색할 수 없을 경우 null을 반..

자바스크립트에서의 변수 선언, 호이스팅, 동작 방식과 그 원리

변수 선언 변수 선언이란, 메모리 공간을 확보하고 변수 이름과 확보된 메모리 공간의 주소를 연결하여 값을 저장할 수 있도록 준비하는 것이다. 변수 선언에 의해 확보된 메모리 공간은 확보가 해제되기 전까지는 누구도 확보된 메모리 공간을 사용할 수 없도록 보호된다. var, let, const 키워드를 사용하여 변수 선언 한다. let, const 키워드는 var 키워드의 여러 단점을 보완하기 위해서 ES6에서 도입되었다. 변수 선언을 할 때 자바스크립트 엔진에서 하는 일 var score; 선언 단계 : 변수 이름을 실행 컨텍스트에 키/값 형식인 객체로 등록한다. 자바스크립트 엔진에 변수의 존재를 알린다. 초기화 단계 : 값을 저장하기 위해 메모리 공간을 확보하고 암묵적으로 undefined를 할당해 초기..

자바스크립트의 역사, 특징, 관련 용어 정리

자바스크립트의 역사 태초의 웹 페이지 로딩 방식 => html태그로 시작해서 html 태그로 끝나는 완전한 HTML 코드를 서버로부터 전송받아 웹 페이지 전체를 렌더링하는 방식 화면 전환이 될 때, 변경필요가 없는 부분까지 필요한 HTML 코드를 다시 전송받기 때문에 성능적으로 불리하다. Ajax의 등장 => 서버로부터 필요한 데이터만 전송받아 변경해야 하는 부분만 한정적으로 렌더링하는 방식 웹 브라우저에서 빠른 성능과 부드러운 화면 전환이 가능해졌다. SPA 프레임워크의 등장 SPA란? Single Page Application의 약자로, 단일 페이지 어플리케이션을 의미한다. 웹 사이트 전체 페이지를 하나의 페이지에 담아 동적으로 화면을 변경해 표시해주는 기술로, 매번 새롭게 페이지를 렌더링해서 제공해..