>  기사  >  웹 프론트엔드  >  ECMAScript와 JavaScript의 차이점을 살펴 보겠습니다.

ECMAScript와 JavaScript의 차이점을 살펴 보겠습니다.

coldplay.xixi
coldplay.xixi앞으로
2021-01-27 17:50:472461검색

ECMAScript와 JavaScript의 차이점을 살펴 보겠습니다.

무료 학습 권장 사항: js 비디오 튜토리얼

1. ECMAScript 소개

ECMAScript는 Ecma International(이전에는 유럽 컴퓨터 제조업체 협회로 알려져 있음)에서 개발한 언어입니다. 이름은 유럽 컴퓨터 제조업체 협회(Computer Manufacturer Association)에서 ECMA-262를 통해 표준화한 스크립팅 프로그래밍 언어입니다. 이 언어는 World Wide Web에서 널리 사용됩니다. 흔히 JavaScript 또는 JScript라고 부르므로 JavaScript의 표준으로 이해될 수 있지만 실제로 후자의 두 언어는 ECMA-262 표준의 구현 및 확장입니다.

1.1 ECMA International

ECMA International은 국제 회원 기반의 정보 통신 표준 기관입니다. 따라서 Ecma International에서 제정한 표준은 주로 다양한 기업에서 제정됩니다. 1997년에 조직은 ECMAScript 언어 사양을 확립한 MCMA-262 표준을 발표했습니다. 이것이 ECMAScript의 출처입니다.

1.2 ECMA-262 표준(ES 표준)

ECMA-262는 ECMA TC39 그룹에서 개발한 스크립트 언어에 대한 사양 표준입니다. TC39 회원은 스크립트 프로그래밍에 관심이 있는 회사의 프로그래머로 구성됩니다.

ECMA-262 표준은 ECMAScript 언어 사양을 정의합니다. 이 표준은 ES 사양이라고도 하는 ECMAScript 언어 사양(ECMAScript 언어 사양)이라고도 합니다.

ES 사양은 1997년에 출시되어 현재 8번째 버전입니다. ECMAScript는 여러 기본 기술, 특히 JavaScript(Netscape Navigator 2.0) 및 JScript(Microsoft IE3)를 기반으로 합니다.

1.3 JavaScript 표준화 과정

1995년경: 인터넷이 터지고 웹 애플리케이션이 끝없이 등장했습니다. 그 당시에는 .com 도메인 이름만 등록하면 오늘날처럼 기본적으로 부자가 될 수 있었습니다. 블록체인과 인공지능. 당시 JavaScript에는 세 가지 주류 버전이 있었습니다.

(1) Netscape Navigator 3.0의 JavaScript.

(2) IE의 JScript.

(3) CEnvi의 ScriptEase.

다른 프로그래밍 언어와 달리 JavaScript에는 구문이나 기능을 통합하는 표준이 없으며 이 3가지 버전은 이 문제를 강조할 뿐입니다. 업계의 우려가 증가함에 따라 이 언어의 표준화가 필수적이라는 것이 분명해졌습니다.

1997: JavaScript 1.1이 ECMA(유럽 컴퓨터 제조업체 협회)에 초안으로 제출되었습니다. 기술위원회 39(TC39)는 "범용, 크로스 플랫폼, 공급업체 중립적 스크립팅 언어의 구문과 의미를 표준화"하기 위해 임명되었습니다. ECMAScript라는 새로운 스크립팅 언어를 정의한 ECMA-262의 첫 번째 버전이 완성되었습니다.

1998: 국제표준화기구(International Organization for Standardization) 및 국제전기기술위원회(ISO/IEC)도 ECMAScript를 표준(ISO/IEC-16262)으로 채택했습니다. 같은 해에 ECMA-262(ES2)의 두 번째 버전이 출시되었습니다. 두 번째 버전에는 기본적으로 새로운 기능이 추가되지 않았습니다.

2002: ECMA-262 제3판(ES3), 새로 도입된 강력한 정규식, 향상된 문자열 처리, 새로운 제어문, try/catch 예외 처리, 더욱 엄격한 오류 정의, 숫자 향후 언어 성장을 예상하여 출력 형식 지정 및 사소한 변경 . 세 번째 버전은 당시 매우 널리 사용되었으며 거의 ​​모든 브라우저가 ES3 표준을 지원했습니다.

ECMA-262 버전 4(ES4)가 조기 종료되었으며 일부 기능이 ES6으로 마이그레이션되었습니다.

2009: ECMA-262 5판(ES5) 출시. 접근자 속성, 객체 반사 생성 및 검사, 속성의 프로그래밍 방식 제어, 추가 배열 조작 기능, JSON 객체 인코딩 형식 지원, 향상된 오류 검사 및 프로그램 보안을 포함한 많은 기능이 ES3를 기반으로 추가되었습니다.

2011: 국제 표준 ISO/IEC 16262:2011로 승인되었습니다. ES5.1 버전은 같은 해에 출시되었으며(ES5에 대한 일부 업그레이드 및 최적화 포함) MCMA-262 및 ISO/IEC의 승인을 받았습니다.

2015: ECMA-262 Sixth Edition (ES6 또는 ES 2015 언어 사양), ES6은 2000년 ES3 출시 이후 침전되기 시작했다고 할 수 있습니다. ES4의 조기 사망으로 인해 ES4의 일부 기능은 ES6가 출시되기 전까지는 구현되지 않았기 때문에 여섯 번째 버전은 전적으로 15년 간의 노력의 결과입니다.

ES6 대규모 애플리케이션, Lib 라이브러리 생성 및 ECMAScript를 다른 언어의 컴파일 대상으로 사용하는 데 더 나은 지원을 제공합니다. ES6에는 주로 다음 기능이 추가되었습니다. 주요 개선 사항에는 모듈, 클래스 선언, 어휘 블록 범위, 반복자 및 생성기, 비동기 프로그래밍 약속, 구조화 패턴 및 적절한 꼬리 호출이 포함됩니다. 내장된 ECMAScript 라이브러리는 맵, 세트, ​​이진 숫자 배열을 포함한 추가 데이터 추상화는 물론 문자열 및 정규식 사용을 지원하도록 확장되었습니다.

2. JavaScript 소개

JavaScript는 기본적으로 유형을 지원하는 동적 유형, 약한 유형의 프로토타입 기반 언어입니다. 해당 인터프리터는 브라우저의 일부이며 클라이언트 측 스크립팅 언어에서 널리 사용되는 JavaScript 엔진이라고 하며 HTML 웹 페이지에 동적 기능을 추가하기 위해 HTML(Standard Universal Markup Language의 응용 프로그램) 웹 페이지에서 처음 사용되었습니다. .

JavaScript는 ECMA-262 표준(ES 표준)을 준수하는 범용 크로스 플랫폼 스크립팅 언어, 즉 ECMAScript의 방언입니다. 기술적인 이점을 얻기 위해 Microsoft는 JScript를 출시했고, CEnvi는 JavaScript처럼 브라우저에서도 실행될 수 있는 ScriptEase를 출시했습니다. 사양을 통일하기 위해 JavaScript는 ECMA 표준과 호환되므로 ECMAScript라고도 합니다.

Sun이 Oracle에 인수되었기 때문에 JavasSript 상표는 Oracle에 속합니다. JavaScript는 초기에 Sun에 의해 등록되었으며 JavaScript 언어를 나타냅니다. 하지만 JavaScript의 첫 번째 발명품은 Netscape였습니다. 1995년 Netscape의 Brendan Eich가 Netscape Navigator 브라우저에서 처음 설계하고 구현했습니다. Netscape는 Sun과 협력하고 있었기 때문에 Netscape 경영진은 Sun이 Java처럼 보이길 원했기 때문에 JavaScript라는 이름이 붙었습니다. 그러나 실제로 그 문법적 스타일은 Self와 Scheme에 더 가깝습니다.

2.1 JavaScript의 기본 기능

JavaScript는 웹 애플리케이션 개발에 널리 사용되는 스크립트 언어로, 웹 페이지에 다양한 동적 기능을 추가하고 사용자에게 보다 원활하고 다양한 기능을 제공하는 데 자주 사용됩니다. 아름다운 브라우징 효과. 일반적으로 JavaScript 스크립트는 HTML에 삽입하여 기능을 실현합니다.

(1) 해석된 스크립트 언어(코드는 미리 컴파일되지 않음).

(2)는 주로 HTML(Standard Universal Markup Language의 응용 프로그램) 페이지에 대화형 동작을 추가하는 데 사용됩니다.

(3) HTML 페이지에 직접 삽입할 수도 있지만, 별도의 JS 파일로 작성하는 것이 구조와 동작의 분리에 유리합니다.

(4) 크로스 플랫폼 기능은 대부분의 브라우저를 지원하며 여러 플랫폼(예: Windows, Linux, Mac, Android, iOS 등)에서 실행할 수 있습니다.

Javascript 스크립팅 언어는 다른 언어와 마찬가지로 고유한 기본 데이터 유형, 표현식 및 산술 연산자, 프로그램의 기본 프로그램 프레임워크를 가지고 있습니다. Javascript는 데이터 및 텍스트 처리를 위해 4가지 기본 데이터 유형과 2가지 특수 데이터 유형을 제공합니다. 변수는 정보를 저장할 수 있는 장소를 제공하고 표현식은 보다 복잡한 정보 처리를 완료할 수 있습니다.

2.2 JavaScript 구성 요소

JavaScript는 아래와 같이 ECMAScript, DOM, BOM의 세 부분으로 구성됩니다.

ECMAScript와 JavaScript의 차이점을 살펴 보겠습니다.

(1) ECMAScript: 언어의 구문과 기본 개체를 설명합니다.

(2) DOM: DOM(문서 개체 모델), 웹 콘텐츠 처리를 위한 방법과 인터페이스를 설명합니다.

(3) BOM: BOM(브라우저 개체 모델)은 브라우저와 상호 작용하기 위한 방법과 인터페이스를 설명합니다.

2.2.1 DOM 문서 개체 모델

문서 개체 모델(DOM)은 확장 가능한 마크업 언어 처리를 위해 W3C 조직에서 권장하는 표준 프로그래밍 인터페이스입니다. 웹 페이지에서 페이지(또는 문서)를 구성하는 객체는 트리 구조로 구성됩니다. 문서의 객체를 표현하는 데 사용되는 표준 모델을 DOM이라고 합니다. 문서 객체 모델의 역사는 1990년대 후반 Microsoft와 Netscape 사이의 "브라우저 전쟁"으로 거슬러 올라갑니다. JavaScript와 JScript의 생사를 놓고 경쟁하기 위해 양 당사자는 브라우저에 대규모로 강력한 기능을 부여했습니다. Microsoft는 VBScript, ActiveX 및 Microsoft 고유의 DHTML 형식을 포함하여 많은 독점 기능을 웹 기술에 추가했습니다. 이로 인해 많은 웹 페이지가 Microsoft가 아닌 플랫폼 및 브라우저를 사용하여 제대로 표시되지 않게 되었습니다. DOM은 당시 양조된 걸작이다.

2.2.2 BOM 브라우저 개체 모델

BOM(브라우저 개체 모델)은 브라우저 개체 모델입니다. BOM은 주로 창 간의 통신을 관리하는 데 사용되므로 BOM은 일련의 관련 개체로 구성되며 각 개체는 모두 많은 메서드와 속성을 제공하지 않습니다. JavaScript 구문의 표준화 조직은 ECMA이고, DOM의 표준화 조직은 W3C입니다. 원래는 Netscape 브라우저 표준의 일부였습니다.

브라우저를 이동하고 크기를 조정할 수 있는 창 개체, 탐색에 사용할 수 있는 위치 개체 및 기록 개체, 브라우저, 운영 체제를 얻을 수 있는 네비게이터 및 화면 개체 등 브라우저 창과 상호 작용하는 일부 개체 및 사용자 화면 정보를 HTML 문서에 액세스하고 프레임 개체를 관리하는 입구로 사용할 수 있습니다.

2.3 JavaScript 처리 엔진

JavaScript 처리 엔진은 JavaScript 코드를 구문 분석하고 실행할 수 있는 인터프리터입니다. 브라우저에는 일반적으로 JavaScript 엔진이 있습니다. JavaScript가 처음 나왔을 때는 브라우저에서 실행되어 클라이언트 측 언어로 사용되었습니다.

일반적인 JavaScript 엔진:

(1) Chrome V8

(2) Firefox SpiderMonkey

(3) Microsoft Edge Chakra

Node.js가 Chrome V8 엔진을 기반으로 한다고 언급하세요. 앞서 언급한 바와 같이 JS를 파싱하고 실행하는 데는 V8 엔진이 사용되며, V8은 ECMAScript 표준을 기반으로 구현됩니다. 다르게 말하면 Node.js에는 DOM 및 BOM 작업이 없으며 JavaScript의 구문 핵심(ES)만 유지하고 이벤트 기반 비차단 I/O 모델을 추가하여 가볍고 효율적으로 만듭니다. Node.js는 Windows, Linux 및 Mac에서 서비스로 실행되어 JavaScript의 역할을 프런트엔드 개발에서 백엔드 개발로 전환합니다.

현재 다소 오래된 Flash 프로그래밍용 ActionScript도 ECMAScript의 특정 구현입니다.

관련 무료 학습 권장사항: javascript 학습 튜토리얼

위 내용은 ECMAScript와 JavaScript의 차이점을 살펴 보겠습니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 csdn.net에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제