1. 자바스크립트 역사
HTML
HTML은 과학자들이 서로 정보를 공유하기 위해 만들어 졌다.
일반인들에게도 인기가 많아지면서 동적인 웹이 필요하게 되었다.
자바스크립트의 탄생
자바스크립트는 1995년 넷 스케이프사의 엔지니어 브랜든아이크가 10일만에 개발한것으로
넷 스케이프사의 브라우저에 적용되었다.
(그는 1998년 파이어폭스를 개발하기도 했으며, 최근엔 모바일 브라우저를 만들었다.)
데이터 공백체크 등등 유효성검사 등의 페이지 동적제어가 목적이었다.
이 자바스크립트를 다른 브라우저 회사에서는 갖고싶어 했다.
그래서 MS의 ie3에 JScript를 넣었다.
넷스케이프사의 자바스크립트와 MS사의 자바스크립트는
같은 기능을 구현하더라도 너무나 다른 내용이었으며
날이갈수록 심해져, 넷스케이프는 자바스크립트를 ECMA에게 표준화를 요청을 했다.
그래서 ECMA(European Computer Manufacturers Association)에서는 자바스크립트의 표준(ECMA262)을 내렸다.
당시 Sun사의 'JAVA' 라는 이름때문에 JavaScript라는 이름을 내놓을수가 없었다. 그래서 ECMAScript라고 했다.
IE8 -> ES3(1999) 스펙
IE9 -> ES5(2009) 스펙
ES + DOM(Document Object Model) + BOM(Browser Object Model)
DOM : document.~
BOM : windows.~
자바스크립트의 표준을 ECMA가 정하다가
ES6(ES2015)부터는 내용이 너무 바껴버렸다.
하위 호환성을 포기해버렸다.
IE9에서는 ES6 코드가 정상적으로 작동하지 않는다.
(ES5로 개발하면 되지만, ES6가 편하니까 개발을 ES6로하고, babel로 하위호환을 해결하게됨)
이를 해결해주는것이 Babel이다.
Babel을 이용하면 ES6를 ES5코드로 변경해주므로 IE9에서는 ES5코드를 읽는셈이다.
IE8까지 지원하려면 es3ify 라이브러리를 이용하여 ES5 -> ES3로 변경해야 한다.
ES2016+ : async, await 지원