늘보블로그
역사 본문
자바스크립트의 탄생 배경
- 1995년 넷스케이프 커뮤니케이션즈가 웹페이지의 보조적 기능 수행을 위해 경량 프로그래밍 언어(자바스크립트 made by 브렌던 아이크)의 도입을 결정함.
- 1996년 3월 모카라는 이름으로 넷스케이프 커뮤니케이션즈의 브라우저인 넷스케이프 내비게이터 2에 탑재함.
- 1996년 9월 라이브스크립트로 이름 변경
- 1996년 12월 자바스크립트로 최종 명명
자바스크립트 표준화
- 1996년 8월 마이크로소프트가 자바스크립트의 파생 버전인 JScript를 인터넷 익스플로러 3.0에 탑재함
- 자바스크립트 !== JScript. 100% 호환되지 않음. -> 시장 점유율 상승을 위해 자사 브라우저에서만 동작하는 기능을 추가하기 시작함.
- 크로스 브라우징: 브라우저에 따라 웹 페이지가 정상적으로 동작하지 않음. 모든 브라우저에서 정상 동작하는 표준화된 자바스크립트의 필요성 대두.
- 1996년 11월 넷스케이프 커뮤니케이션즈가 ECMA 인터내셔널에 자바스크립트 표준화 요청
- ECMA 인터내셔널: 컴퓨터 시스템의 표준을 관리하는 비영리 표준화 기구
- 1997년 7월 ECMA-262라고 불리는 표준화된 자바스크립트 초판(ECMAScript 1) 사양이 완성되었고 상표권 문제로 ECMAScript라고 명명
- 2015년에 공개된 ECMAScript 6(ECMAScript 2015, ES6)는 let/const 키워드, 화살표 함수, 클래스, 모듈 등과 같이 범용 프로그래밍 언어로서 갖춰야 할 기능을 대거 도입함. ES6 이후의 버전업은 비교적 작은 기능을 추가하는 수준으로 매년 공개할 것으로 예고됨.
버전 | 출시연도 | 특징 |
---|---|---|
ES1 | 1997 | 초판 |
ES5 | 2009 | HTML5와 함께 출현한 표준안. JSON, strict mode, 접근자 프로퍼티, 프로퍼티 어트리뷰트 제어, 향상된 배열 조작 기능(forEach, map, filter, reduce, some, every) |
ES6 | 2015 | let/const, 클래스, 화살표 함수, 템플릿 리터럴, 디스트럭처링 할당, 스프레드 문법, rest 파라미터, 심벌, 프로미스, Map/Set, 이터러블, for...of, 제너레이터, Proxy, 모듈 import/export |
ES8 | 2017 | async/await, Object 정적 메서드(Object.values, Object.entries, Object.getOwnPropertyDescriptors) |
ES10 | 2020 | String.prototype.matchAll, BigInt, globalThis, Promise.allSettled, null 병합 연산자, 옵셔널 체이닝 연산자, for ... in enumeration order |
'스터디로그 > javascript' 카테고리의 다른 글
표현식 (0) | 2020.12.03 |
---|---|
변수 (0) | 2020.12.03 |
ECMAScript (0) | 2020.12.02 |
발전사 (0) | 2020.12.02 |
prettier 사용 시 화살표 함수 에러 (0) | 2020.09.07 |