
‘웹페이지에 생동감을 불어넣기 위해’ 만들어진 프로그래밍 언어
웹페이지의 HTML <script>~</script>안에 작성 할 수 있으며, 웹페이지를 불러올 때 스크립트가 자동으로 실행된다.
자바스크립트는 브라우저뿐만 아니라 서버에서도 실행 가능하다.
브라우저마다 자바스크립트 가상 머신이라 불리는 엔진이 내장되어 있고, 각 엔진의 명칭들은 아래 표와 같다.
| 브라우저 | 엔진코드 |
|---|---|
| Chrome, Opera | V8 |
| Firefox | SpiderMonkey |
| IE | (버전에 따라 다름) Trident, Chakra |
| MS Edge | ChakraCore |
| Safari | SquirrelFish |
웹페이지 조작
클라이언트와 서버의 상호작용에 관한 모든일
브라우저는 보안을 위해 자바스크립트의 기능에 제약을 걸어놓았다.
(악성 웹페이지가 개인 정보에 접근하거나 사용자의 데이터를 손상하는 것을 막기 위함)
http://anysite.com에서 받아온 페이지가 http://gmail.com에서 받아온 페이지 상의 정보에 접근해 중요한 개인정보를 훔치는 걸 막기 위함.
- HTML/CSS와 완전히 통합할 수 있음
- 간단한 일은 간단하게 철리할 수 있게 해줌
- 모든 주요 브라우저에서 지원하고, 기본 언어로 사용됨
위 세가지 모두를 지원하는 브라우저 연관 기술은 JS뿐이라고 한다.
이런 특징 때문에 JS는 브라우저 인터페이스를 만들 때 가장 널리 사용 되고, JS를 이용해서 서버나 모바일 앱 등을 만드는 것도 가능하다.
그 어떤 툴에도 '완벽'이란 것은 붙지 않는다. 사람마다 프로젝트마다 모두 다른 기능을 원하기 때문이다.
이로 인해 브라우저에서 실행 되기 전에 자바스크립트로 트랜스파일(transpile, 변환) 할 수 있는 새로운 언어들이 많이 등장했다.
이 외에도 자바스크립트로 트랜스파일 할 수 있는 언어는 다양하다. 개발 언어로 이런 언어 중 하나를 택한다고 하더라도 자신이 무엇을 하고 있는지 이해하려면 결국엔 자바스크립트를 알아야 한다.
_Tue 10-Dec-2024.
https://ko.javascript.info/intro 해당 자료를 보고 요약...하려 하였으나, 이미 잘 정리된 자료이기에 확인차원에서 옮겨 보았다.