반응형
02. 자바스크립트란
탄생
1995년 자바스크립트 탄생!
1996년
- Mocha로 이름이 변경되었다가, 9월에 또 livescript로 변경되었다가 12월에 다시 javascript로 최종 결정!
- 라이벌인 Jscript가 등장함 → 근데 두개 언어가 달라서 표준화 안됨
- ⇒ 브라우저에따라 웹페이지가 됐다가 안됐다함(크로스 브라우징 이슈)
1997년 표준화된 자바스크립트인 ECMAScript로 표준화됨
성장
초기
거의 다 정적인 웹페이지라서 브라우저가 딱히 js를 실행시킬 일이 별로 없음
Ajax(Asynchronous JavaScript and XML)
비동기방식으로 데이터를 교환할 수 있는 통신 기능
초기에 html을 주고받아 전체를 랜더링해서 보여주던 형태에서 (클릭하면 깜-빡해야함), 그럴 필요없이 부분렌더링이 가능하게 됨
JQuery
DOM을 더욱 쉽게 조작할 수 있게됨
기존 방식
const content=document.getElementById('#content');
content.어쩌구~
jQuery
$('#content').어쩌구
V8엔진
구글 크롬의 엔진
성능이 향상되어 웹서버에서 수행되던 로직들이 대거 클라이언트로 이동됨
NodeJS
js런타임환경 → 브라우저 바깥에서 독립적으로 실행가능하게됨
- 비동기I/O를 지원함
- 단일 스레드 이벤트루프 기반으로 동작하여 요청처리 성능이 좋음 → I/O가 빈번하게 발생하는 SPA에 적합함
Javascript와 ECMAScript
자바스크립트는 일반적으로 프로그래밍언어로서 기본뼈대를 이루는 ECMAScript와 브라우저가 별도로 지원하는 클라이언트 사이드 Web API를 포함한 개념이다.
자바스크립트의 특징
별도의 컴파일 작업을 수행하지 않는 인터프리터 언어임
컴파일러 언어 | 인터프리터 언어 |
---|---|
실행되기 전에 컴파일 타임에 소스코드 전체를 머신코드로 변한한 후 에 실행함 | 런타임에 문단위로 한줄씩 중간 코드인 바이트 코드로 변환하여 실행함 |
실행파일을 만듦 | 실행파일이 존재하지 않음 |
컴파일단계와 실행단계가 분리되어 있음. 명시적인 컴파일 단계를 거치고, 명시적으로 실행파일을 실행함 | 인터프리트 단계와 실행단계가 분리되어 있지 않음 |
실행에 앞서 컴파일은 단 한번 수행 | 코드 실행시마다 인터프리트 과정이 반복수행됨 |
미리 컴파일되므로 코드 실행속도가 빠름 | 코드실행속도가 느림 |
반응형