자바스크립트는 웹 페이지에 동작을 넣기 위해 탄생한 프로그래밍 언어로, 마우스 클릭이나 키보드 눌림과 같은 사용자 이벤트에 반응하거나, HTML 문서의 요소를 조작하는 등 표현에 국한되는 마크업 언어와는 다르게 웹 페이지를 동적으로 만들 수 있다.
자바스크립트는 ECMA 규격을 따른다. ES6, ES7 등 ES + 숫자 형식으로 표기하는 이 단어는, ECMAScript가 배포된 버전을 의미하며, 배포된 연도에 따라 ES6 = ECMA 2015라고 표기할 수 있다. 특히 ES6가 강조되는 이유는 과거 프로그래밍 언어로써 부족한 점이 많았던 자바스크립트의 문제점들을 해결하거나 보완할 수 있는 해결책들이 이 ES6 버전에서 대거 등장했기 때문이다. 한 마디로 우리가 지금 얘기하는 모던 자바스크립트의 큰 틀을 ES6에서 비로소 갖추게 되었고, 맥락상 과거의 자바스크립트와 현재의 자바스크립트를 나누는 기준이 ES6라고 할 수 있다.
브라우저에서 동작하는 자바스크립트
브라우저에서 동작하는 자바스크립트는 다음과 같은 일을 할 수 있다.
- HTML 문서의 요소를 조작 (생성, 삭제 등)
- 문서 내 요소들의 스타일을 지정하거나 변경
- 클릭, 입력 등의 사용자가 발생시키는 이벤트 처리
- 브라우저에 데이터 저장
- 서버에 요청 전송
- 서버로부터 최신의 데이터 패치
브라우저 밖에서 동작하는 자바스크립트
과거 자바스크립트가 실행될 수 있는 환경은 브라우저로 한정됐었다. 하지만 노드 등의 자바스크립트 런타임이 등장하면서 브라우저 밖에서도 실행될 수 있게 되었다. 이러한 브라우저 밖에서 동작하는 자바스크립트가 할 수 있는 일은 다음과 같다.
- 백엔드 개발 (Express 등)
- 모바일 앱 개발 (Ionic, React Native 등)
- 데스크톱 앱 개발 (Electron 등)
'Language > JavaScript' 카테고리의 다른 글
| [JavaScript] 연산자 (1) | 2024.09.16 |
|---|---|
| [JavaScript] Set과 Map (0) | 2024.09.16 |
| [JavaScript] 참조 데이터 타입 (0) | 2024.09.16 |
| [JavaScript] 원시 데이터 타입 (0) | 2024.09.16 |
| [JavaScript] 변수와 상수 (0) | 2024.09.16 |