JS 튜토리얼

제이에스 홈 JS 소개 JS 어디로 JS 출력 JS 문 JS 구문 JS 코멘트 JS 변수 제이에스렛 JS 상수 JS 연산자 JS 산술 JS 할당 JS 데이터 유형 JS 함수 JS 객체 JS 이벤트 JS 문자열 JS 문자열 메서드 JS 문자열 검색 JS 문자열 템플릿 JS 번호 JS 숫자 메서드 JS 배열 JS 배열 메서드 JS 배열 정렬 JS 배열 반복 JS 배열 상수 JS 날짜 JS 날짜 형식 JS 날짜 가져오기 메서드 JS 날짜 설정 방법 JS 수학 JS 랜덤 JS 부울 JS 비교 JS 조건 JS 스위치 JS 루프 In에 대한 JS 루프 의 JS 루프 JS 루프 동안 JS 브레이크 JS 이터러블 JS 세트 JS 맵 JS 유형 JS 유형 변환 JS 비트와이즈 JS 정규 표현식 JS 오류 JS 범위 JS 호이스팅 JS 엄격 모드 JS 이 키워드 JS 화살표 함수 JS 클래스 JS JSON JS 디버깅 JS 스타일 가이드 JS 모범 사례 JS 실수 JS 성능 JS 예약어

JS 버전

JS 버전 JS 2009(ES5) JS 2015(ES6) JS 2016 JS 2017 JS 2018 JS IE / 엣지 JS 연혁

JS 객체

객체 정의 개체 속성 개체 메서드 개체 표시 개체 접근자 객체 생성자 개체 프로토타입 객체 반복 가능 객체 세트 객체 맵 개체 참조

JS 함수

기능 정의 기능 매개변수 함수 호출 함수 호출 기능 적용 함수 클로저

JS 클래스

수업 소개 클래스 상속 클래스 정적

JS 비동기

JS 콜백 JS 비동기 JS 약속 JS 비동기/대기

JS HTML DOM

DOM 소개 DOM 메서드 DOM 문서 DOM 요소 DOM HTML DOM 양식 DOM CSS DOM 애니메이션 DOM 이벤트 DOM 이벤트 리스너 DOM 탐색 DOM 노드 DOM 컬렉션 DOM 노드 목록

JS 브라우저 BOM

JS 창 JS 화면 JS 위치 JS 연혁 JS 네비게이터 JS 팝업 경고 JS 타이밍 JS 쿠키

JS 웹 API

웹 API 소개 웹 양식 API 웹 기록 API 웹 스토리지 API 웹 작업자 API 웹 가져오기 API 웹 지리적 위치 API

JS 아약스

AJAX 소개 AJAX XMLHttp AJAX 요청 AJAX 응답 AJAX XML 파일 AJAX PHP AJAX ASP AJAX 데이터베이스 AJAX 애플리케이션 AJAX 예제

JS JSON

JSON 소개 JSON 구문 JSON 대 XML JSON 데이터 유형 JSON 구문 분석 JSON 문자열화 JSON 객체 JSON 배열 JSON 서버 JSON PHP JSON HTML JSON JSONP

JS 대 jQuery

jQuery 선택기 제이쿼리 HTML 제이쿼리 CSS 제이쿼리 DOM

JS 그래픽

JS 그래픽 JS 캔버스 JS 플로틀리 JS 차트.js JS 구글 차트 JS D3.js

JS 예제

JS 예제 JS HTML DOM JS HTML 입력 JS HTML 객체 JS HTML 이벤트 JS 브라우저 JS 편집기 JS 연습 JS 퀴즈 JS 인증서

JS 참조

자바스크립트 객체 HTML DOM 객체


자바스크립트 역사


자바스크립트/ECMA스크립트

JavaScript 는 1995년 Brendan Eich 에 의해 발명되었습니다 .

Netscape 2 용으로 개발 되었으며 1997년 ECMA-262 표준이 되었습니다.

Netscape가 JavaScript를 ECMA에 넘긴 후 Mozilla 재단은 Firefox 브라우저용 JavaScript를 계속 개발했습니다. Mozilla의 최신 버전은 1.8.5였습니다. (ES5와 동일).

Internet Explorer (IE4)는 ECMA-262 Edition 1(ES1)을 지원하는 최초의 브라우저였습니다.

년도 ECMA브라우저
1995년   JavaScript는 Brendan Eich에 의해 발명되었습니다.
1996년   Netscape 2는 JavaScript 1.0과 함께 출시되었습니다.
1997년   JavaScript가 ECMA 표준이 됨(ECMA-262)
1997년 ES1 ECMAScript 1이 출시되었습니다.
1997년 ES1 IE 4는 ES1을 지원하는 최초의 브라우저였습니다.
1998년 ES2 ECMAScript 2 출시
1998년   Netscape 42는 JavaScript 1.3과 함께 출시되었습니다.
1999년 ES2 IE 5는 ES2를 지원하는 최초의 브라우저였습니다.
1999년 ES3 ECMAScript 3 출시
2000년 ES3 IE 5.5는 ES3를 지원하는 최초의 브라우저였습니다.
2000년   Netscape 62는 JavaScript 1.5와 함께 출시되었습니다.
2000년   Firefox 1은 JavaScript 1.5와 함께 출시되었습니다.
2008년 ES4 ECMAScript 4는 포기되었습니다
2009년 ES5 ECMAScript 5 출시
2011년 ES5 IE 9는 ES5를 지원하는 최초의 브라우저입니다 *
2011년 ES5 Firefox 4는 JavaScript 1.8.5와 함께 출시되었습니다.
2012년 ES5 Safari 6에서 ES5를 완벽하게 지원
2012년 ES5 IE 10에서 ES5에 대한 완전한 지원
2012년 ES5 Chrome 23에서 ES5를 완벽하게 지원
2013년 ES5 Firefox 21에서 ES5에 대한 완전한 지원
2013년 ES5 Opera 15에서 ES5에 대한 완전한 지원
2014년 ES5 모든 브라우저에서 ES5 완벽 지원
2015년 ES6 ECMAScript 6 출시
2016년 ES6 Chrome 51에서 ES6 완벽 지원
2016년 ES6 Opera 38에서 ES6에 대한 완전한 지원
2016년 ES6 Edge 14에서 ES6에 대한 완전한 지원
2016년 ES6 Safari 10에서 ES6에 대한 완전한 지원
2015년 ES6 Firefox 52에서 ES6에 대한 완전한 지원
2018년 ES6 모든 브라우저에서 ES6 완벽 지원 **

메모

* Internet Explorer 9는 ES5 "use strict"를 지원하지 않았습니다.

** Internet Explorer 11은 ES6을 지원하지 않습니다.


ECMA 기술 위원회 39

1996년 Netscape와 Brendan Eich는 JavaScript를 ECMA 국제 표준 기구에 가져갔고 기술 위원회(TC39)가 언어 개발을 위해 만들어졌습니다.

ECMA-262 Edition 1은 1997년 6월에 출시되었습니다.


ES4에서 ES6으로

TC39 위원회가 2008년 오슬로에 모였을 때 ECMAScript 4에 동의하기 위해 두 개의 매우 다른 진영으로 나뉘었습니다.

ECMAScript 3.1 Camp :
ES3에서 점진적인 업그레이드를 원하는 Microsoft와 Yahoo.

ECMAScript 4 Camp :
대규모 ES4 업그레이드를 원하는 Adobe, Mozilla, Opera 및 Google.

2008년 8월 13일 Brendan Eich는 다음과 같이 이메일 을 썼습니다 .

JavaScript 표준 기관인 Ecma의 Technical Committee 39가 1년 넘게 분열되어 일부 회원은 ECMA-262의 주요 4차 개정판인 ES4를 선호하고 다른 회원은 기존 ECMA-262 기반 ES3.1을 지지한다는 것은 비밀이 아닙니다. 에디션 3(ES3) 사양. 이제 분할이 끝났다고 보고하게 되어 기쁩니다.

해결책은 다음과 같이 협력하는 것이었습니다.

  • ECMAScript 4는 ES5로 이름이 변경되었습니다.
  • ES5는 ECMAScript 3의 증분 업그레이드여야 합니다.
  • ECMAScript 4의 기능은 이후 버전에서 선택해야 합니다.
  • TC39는 ES5보다 범위가 더 큰 새로운 주요 릴리스를 개발해야 합니다.

계획된 새 릴리스(ES6)의 코드명은 "하모니"입니다(분할 때문에?).

ES5는 대성공이었습니다. 2009년에 출시되었으며 모든 주요 브라우저(Internet Explorer 포함)는 2013년 7월까지 완전히 호환되었습니다.

Chrome 23 IE10 / Edge Firefox 21 Safari 6 Opera 15
Nov 2012 Sep 2012 May 2013 Jul 2012 Jul 2013

ES6도 큰 성공을 거두었다. 2015년에 출시되었으며 모든 주요 브라우저는 2017년 3월까지 완전히 호환되었습니다.

Chrome 51 Edge 14 Firefox 52 Safari 10 Opera 38
May 2016 Aug 2016 Mar 2017 Sep 2016 Jun 2016