728x90
1. 프로그래밍, 2. 자바스크립트란
- 컴퓨처가 이해할 수 있는 기계어로 변환하는 일종의 번역기
- 번역기
- 컴파일러
- 인터프리터
컴파일 언어 | 인터프리터 언어 |
코드가 실행되기 전 단계인 컴파일 타임에 소스코드 전체를 한번에 머시 코드로 변환한 후 실행 | 코드가 실행되는 단계인 런타임에 문 단위로 한 줄씩 중간코드인 바이트코드로 변환한 후 실행 |
실행 파일을 생성 | 실행 파일 생성 안함 |
컴파일 단계와 실행 단계가 분리, 명시적인 컴파일 단계를 거치고 명시적으로 실행 파일을 실행 | 인터프리트 단계와 실행 단계가 분리 안됨 인터프리터는 한 줄씩 바이트코드로 변환하고 즉시 실행 |
실행에 앞서 컴파일은 단 한번 수행 | 코드가 실행될 때마다 인터프리트 과정이 반복 수행 |
컴파일과 실행 단계가 분리되어 있으므로 코드 실행 속도가 빠르다 | 인터프리트 단계와 실행 단계가 분리되어 있지 않고 반복 수행되므로 코드 실행 속도가 비교적 느리다. |
3. 자바스크립트 실행 환경
3.1 자바스크립트 실행 환경
- 브라우저는 파싱된 HTML 요소를 선택하거나 조작하는 기능의 집합인 DOM API를 기본적으로 제공
- 브라우저 외부에서 자바스크립트 개발 환경을 제공하는 목적을 가진 Node.js는 DOM API를 제공하지 않는다.
3.2. 디버깅
- 내용 추가 및 이미지 까지 넣기
3.3.Node.js
- Node.js 와 npm이 필요한 경우
- react, Angular, Lodash같은 프레임워크 또는 라이브러리를 도입하거나
- Babel, Webpck, ESLint 도 구를 사용하는 경우
- Node.js : 자바스크립트 런타임 환경
- npm : 자바스크립트 패키지 매니저