Website 의 구성
- HTML(Hyper Text Markup Language) : 웹페이지의 구조를 만들어 주는 마크업 언어
- CSS : 웹페이지에 디자인을 입혀주는 스타일 규칙 언어
- JavaScript : 웹페이지가 동적으로 움직이도록 만들어주는 객체 기반 스크립트 언어
JavaScript란?
- 자바스크립트는 "HTML 웹페이지에 생동감을 불어넣기 위해" 만들어진 프로그래밍 언어
- 자바스크립트는 자체적으로 실행되지 않으며, 실행하려면 자바스크립트 엔진이 필요
- Vanilla JS : 핵심이 되는 아무것도 포함되지 않은 순수 자바스크립트를 함축적으로 표현하는 것
- 자바스크립트 엔진 process : 엔진이 스크립트를 읽는다. -> 스크립트를 기계어로 변환한다. -> 코드를 빠르게 실행한다.
자바스크립트 엔진 예시 (Chrome : V8, IE : Chakra, Firefox : SpiderMonkey 등)
JavaScript 는 인터프리터 언어? 컴파일러 언어?
- 인터프리터 언어 : 고급 언어(사람이 이해하고 작성하기 쉬운 코드)로 작성된 프로그램을 한 줄 단위로 받아들여 번역하고, 번역과 동시에 프로그램을 한 줄 단위로 즉시 실행하는 언어
- 컴파일 언어 : 프로그래밍된 코드를 실행할 때 모든 코드를 컴파일러를 통해 기계어로 변환한 후에 파일을 생성하여 그 파일을 실행하는 언어
자바스크립트는 "HTML 페이지를 동적으로 만드는 것"에 목적이 있어 가벼운 인터프리터 언어로 만들어졌다. 하지만, 자바스크립트의 성능을 크게 향상하기 위하여 실행되는 플랫폼에 따라 엔진(대부분의 현대 자바스크립트 엔진) 내부에서 컴파일 과정을 거친다.
JavaScript? ECMAScript?
- JavaScript : 우리가 쓰는 국어
- ECMA 인터내셔널 : 표준어를 관리하는 국립국어원
- ECMA-262 : 우리가 일상생활에서 쓰는 국어의 기준이 되는 표준어
- ECMAScript : 국립국어원이 정한 표준어의 여러 가지 규칙 (ex : 발음 또는 맞춤법)
'Programming Languages > JavaScript' 카테고리의 다른 글
[JavaScript] TDZ(Temporal Dead Zone) (0) | 2024.08.10 |
---|---|
[JavaScript] 호이스팅 (Hoisting) (0) | 2024.08.10 |
[JavaScript] 연산자 (0) | 2022.06.30 |
[JavaScript] 64비트 부동소수점 (0) | 2022.06.28 |
[JavaScript] 변수 (0) | 2022.06.28 |
댓글