■ 정의
- javascript는 동적으로 \컨텐츠를 바꾸고, 멀티미디어를 다루고, 움직이는 이미지 등을 웹 페이지를 꾸며주도록 하는 프로그래밍 언어
- javascript는 보통 HTML, CSS와 함께 웹페이지를 표현한다.
■ 특징
- javascript는 객체 기반의 스크립트 프로그래밍 언어
※스크립트( 프로그래밍) 언어(Scripting language) : 응용 소프트웨어를 제어하는 프로그래밍 언어로, 응용프로그램과 독립립하여 사용되고 일반적으로 응용프로그램의 언어와 다른 언어로 사용되어 최종 사용자가 응용 프로그램의 동작을 사용자의 요구에 맞게 수행할 수 있도록 해준다.
스크립트언어로 작성된 코드는 시작에서 끝날때까지 실행되며, 명확한 엔트리 포인트가 없다.(javascript, php, 파이썬, 유닉스 쉘 스크립트, 등)
■ 역사
- javascript는 1955년 Netscape Communications의 Brendan Eich가 Mocha라는 이름으로 개발하였으며 Netscape Navigator 2.0을 출시하면서 지원하기 시작했다. Mocha→LiveScript→JavaScript 순으로 이름이 변경되었다.
※ Netscape Communications : 미국의 인터넷, 소프트웨어, 통신 산업을 하는 회사
- Netscape Communications는 표준화를 위해 ECMA International에 제출하였고, 1997년에 ECMA 표준이 되었다.
※ ECMA International : 정보와 통신시스템을 위한 국제적이면서 비영리 표준화기구. 이 기구는 1961년에 유럽에서 컴퓨터 시스템을 표준화하기 위해 ECMA(European Computer Manufacturers Association)로 세워졌으나, 국제적 확장을 반영하여 Ecma Interational로 기구 명을 변경
■ 종류
Netscape Communications가 만든 javascript가 성공하자 Microsoft는 Javascript를 리버스 엔지니어링 하여 JScript로 개발하여 Internet Explorer 3.0 부터 지원하기 시작했다. 이런식으로 여러 곳에서 javascript 엔진을 개발하였는데 그 종류는 다음과 같다.
- SpiderMonkey : 최초의 javascript 엔진. Netscape Navigator에서 지원, 파이어폭스 지원
웹 브라우저를 만드는데 기반을 제공한 오픈소스 응용프로그램 프레임워크
- Chakra(JScript9) : Internet Explorer에서 사용
- Chakra(javascript) : Microsoft Edge에서 사용
- V8 : Google이 개발. Chrome과 node.js에서 사용- JerrySCript : 사물인터넷용의 매우 가벼운 자바스크립트 엔진
- Rhino : 모질라 재단이 운영, 오픈소스, 모두 자바로 개발됨
- WebKit : 사파리용으로 애플이 개발. 오픈소스
이 외에도, Juce, Nashorn, KJS 등이 있다.
브라우저별로 사용하는 javascript 엔진이 다르고, 브라우저 버젼별로도 지원하는 ECMAScript version이 달라서 똑같은 javscript 코드를 짜도 브라우저별, 브라우저 버젼별로 동작이 달랐던 것 같다....
'개발 > javascript' 카테고리의 다른 글
[javascript] 원시타입과 객체 Boolean으로 변환 (0) | 2023.01.01 |
---|---|
ECMAScript 2015(ES6) (0) | 2022.12.30 |
[npm] 패키지 관리 (2) | 2022.12.23 |
[javascript] RGBA ↔ HEX 변환 (0) | 2021.01.12 |
[javascript] ModalDialog에서 window.open시 session 끊기는 문제 (0) | 2019.01.23 |