Modern JavaScript Deep Dive
-
모던 자바스크립트 딥 다이브 6장. 데이터 타입Modern JavaScript Deep Dive 2022. 4. 16. 23:24
데이터 타입 자바스크립트는 7개의 타입을 제공한다. 원시 타입 (primitive type) 객체 타입 (reference type / object type) 숫자, 문자열, 불리언, undefined, null, symbol 배열, 객체, 함수 정적 타입 언어는 변수 선언 시점에 변수의 타입이 결정되고 변수의 타입을 변경할 수 없다. 동적 타입 언어인 자바스크립트에서는 값을 할당하는 시점에 변수의 타입이 동적으로 결정되고 변수의 타입을 재할당을 통해 언제든지 자유롭게 변경할 수 있다. 컴퓨터가 이해하는 코드는 어떤 바보도 쓸 수 있다. 하지만 훌륭한 프로그래머는 사람이 이해할 수 있는 코드를 쓴다. - 마틴 파울러, 리팩토링의 저자
-
모던 자바스크립트 딥 다이브 5장. 표현식과 문Modern JavaScript Deep Dive 2022. 4. 16. 20:08
값 (value) 값은 식이 평가되어 생성된 결과를 말한다. 변수에 할당되는 것이 곧 ‘값’이다. 리터럴 리터럴은 사람이 이해할 수 있는 문자 또는 약속된 기호를 사용해 값을 생성하는 표기법이다. (=표기법) 표현식은 값으로 평가될 수 있는 문이다. 즉, 표현식이 평가되면 새로운 값을 생성하거나 기존 값을 참조한다. 표현식인 문과 표현식이 아닌 문를 구별할 수 있는 방법 변수에 할당했을 때 에러가 난다면? 표현식이 아닌 문이다. (값으로 평가할 수 없기 때문)
-
모던 자바스크립트 딥 다이브 4장. 변수Modern JavaScript Deep Dive 2022. 4. 15. 20:32
변수란? 하나의 값을 저장하기 위해 확보한 메모리 공간 자체 또는 그 메모리 공간을 식별하기 위해 붙인 이름 CPU를 이용해 계산한 값을 재사용하기 위해서 변수라는 것을 마련해 메모리에 저장해 놓는다. 변수명: 메모리 공간에 저장된 값을 식별할 수 있는 고유한 이름 변수 값: 변수에 저장된 값 할당: 변수에 값을 저장하는 것 참조: 변수에 저장된 값을 읽어들이는 것 변수명 - 식별자: 어떤 값을 구별해서 식별할 수 있는 고유한 이름, 식별자는 값이 아니라 메모리 주소를 기억하고 있다. 즉, 식별자는 메모리 주소에 붙인 이름이다. 변수 이름은 첫 아이 이름을 짓듯이 심사숙고해서 지어야 한다. 변수 선언의 단계 선언 단계: 변수 이름을 등록해서 자바스크립트 엔진에 변수의 존재를 알린다. 초기화 단계: 값을 ..
-
모던 자바스크립트 딥 다이브 3장. 자바스크립트 개발 환경과 실행 방법Modern JavaScript Deep Dive 2022. 4. 14. 19:07
자바스크립트 실행 환경에는 브라우저와 node.js 가 있다. node.js는 브라우저 외부 환경에서 돌아가는 자바스크립트 환경이기 떄문에 DOM API는 제공하지 않는다. (cheerio라는 라이브러리가 있음) 반면 node.js에는 파일을 생성하고 수정할 수 있는 파일 시스템이 있지만 브라우저에는 없다. 브라우저 Node.js 개발자 도구 Console 탭: 프롬프트에 자바스크립트 코드를 입력하면 다음 줄에 실행 결과가 표시횐다. 에러 여부도 확인할 수 있다. 개발자 도구 Source 탭: 디버깅을 할 수 있는 패널이다. vscode 추천 익스텐션 coderunner live server
-
모던 자바스크립트 딥 다이브 2장. 자바스크립트란?Modern JavaScript Deep Dive 2022. 4. 13. 19:06
용어 정리 ES6 자바스크립트의 탄생 이후 크로스 브라우징 이슈를 보완한 표준화된 자바스크립트의 탄생 Ajax 자바스크립트를 이용해 서버와 브라우저가 비동기 방식으로 데이터를 교환할 수 있는 기능 jQuery DOM을 더욱 쉽게 제어할 수 있고 크로스 브라우징 이슈도 어느 정도 해결한 언어 V8 엔진 자바스크립트를 빠르게 동작하게 만들어주는 브라우저 엔진 Node.js V8 엔진으로 빌드된 자바스크립트 런타임 환경, 서버 개발 가능 SPA 프레임워크 개발 규모와 복잡도의 상승에 따른 유연한 프레임워크의 등장 컴퓨팅 언어 컴파일러 언어 인터프리터 언어: 자바스크립트는 인터프리터 언어다. (+v8이랑 기타 현대 엔진은 컴파일링도 쓴다. ex. v8 optimization) 자바스크립트 명령형, 함수형, 프로..