Notice
Recent Posts
Recent Comments
Link
«   2025/08   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31
Tags
more
Archives
Today
Total
관리 메뉴

늘보블로그

역사 본문

스터디로그/javascript

역사

개발자늘보 2020. 11. 30. 23:54

자바스크립트의 탄생 배경


  • 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