>웹 프론트엔드 >프런트엔드 Q&A >자바스크립트와 es6의 차이점은 무엇인가요?

자바스크립트와 es6의 차이점은 무엇인가요?

WBOY
WBOY원래의
2022-07-28 16:57:175342검색

JavaScript와 es6의 차이점: 1. JavaScript는 HTML 웹 페이지에 동적 기능을 추가하는 데 사용되는 동적 유형, 약한 유형의 클라이언트 측 스크립팅 언어입니다. 2. es6은 JavaScript 언어 사양이고 JavaScript는 es6의 구현입니다.

자바스크립트와 es6의 차이점은 무엇인가요?

이 튜토리얼의 운영 환경: Windows 10 시스템, JavaScript 버전 1.8.5, Dell G3 컴퓨터.

javascript와 es6의 차이점은 무엇입니까?

JavaScript란 무엇입니까?

JavaScript는 동적 유형, 약한 유형의 프로토타입 기반 클라이언트 측 스크립팅 언어로, HTML 웹 페이지에 동적 기능을 추가하는 데 사용됩니다.

동적: 데이터 유형은 런타임에 결정됩니다. 변수를 사용하기 전에는 유형 선언이 필요하지 않습니다. 일반적으로 변수의 유형은 해당 변수가 할당된 값의 유형입니다.

약한 클래스: 계산 중에 서로 다른 유형 간의 암시적 변환이 사용자에게 투명할 수 있습니다. 유형이 올바르지 않더라도 암시적 변환을 통해 올바른 유형을 얻을 수 있습니다.

프로토타입: 새 개체는 개체를 템플릿으로 상속하고 자체 속성을 새 개체와 공유합니다. 템플릿 개체를 프로토타입이라고 합니다. 이러한 방식으로 새 객체가 인스턴스화되면 생성 시 정의된 속성과 런타임뿐만 아니라 프로토타입 객체의 속성도 누릴 수 있습니다.

ES6이란

ECMAScript 6.0(이하 ES6)은 JavaScript 언어의 차세대 표준(현재 ES5 표준을 따르고 있음)으로 2015년 6월 공식 출시되었습니다. 그 목표는 JavaScript 언어를 사용하여 복잡한 대규모 애플리케이션을 작성하고 엔터프라이즈 수준의 개발 언어가 되도록 하는 것입니다.

ES6의 새로운 기능

  • ES6의 let 명령은 변수를 선언합니다. 사용법은 var와 유사하지만 ES5에는 새로운 블록 수준 범위가 추가되지 않습니다. var는 변수 승격(variable Promotion) 개념을 가지고 있지만, let에서는 사용되는 변수를 선언해야 합니다.

  • ES6에서 다음과 같은 변수의 구조 분해 할당: var [a,b,c] = [0,1,2];

  • ES6에서는 프로토타입 체인이 더 이상 ES5와 같은 상속을 구현하는 데 사용되지 않습니다. , 그러나 소개되었습니다. 클래스 개념은 Java의 객체 지향 프로그래밍 구문과 다소 유사하게 들리지만 둘은 다릅니다.

  • ES6의 함수 정의는 더 이상 function 키워드를 사용하지 않지만 정의에 =>를 사용합니다.

  • ES6에서는 함수 A(x, y=9)와 같은 기본 함수 매개변수를 설정할 수 있습니다. ;

ECMAScript와 JavaScript의 관계

JavaScript의 창시자인 Netscae의 저작권 문제로 인해 ECMAScript는 Javascript라고 부를 수 없습니다. 간단히 말해서, ECMAScript와 JavaScript의 관계는 전자가 후자의 명세(언어 명세)이고, 후자가 전자의 구현이라는 것입니다.

Expand Knowledge

ES6 기능은 다음과 같습니다:

1. 블록 수준 범위 키워드 let, 상수 const

2 객체 리터럴에 대한 속성 값 단축

var obj = {
    // __proto__
    __proto__: theProtoObj,
    // Shorthand for ‘handler: handler’
    handler,
    // Method definitions
    toString() {
    // Super calls
    return "d " + super.toString();
    },
    // Computed (dynamic) property names
    [ 'prop_' + (() => 42)() ]: 42
};

3. . 함수 매개변수 - 기본값, 매개변수 패키징, 배열 확장(Default, Rest, Spread)

let singer = { first: "Bob", last: "Dylan" };
let { first: f, last: l } = singer; // 相当于 f = "Bob", l = "Dylan"
let [all, year, month, day] =  /^(dddd)-(dd)-(dd)$/.exec("2015-10-25");
let [x, y] = [1, 2, 3]; // x = 1, y = 2

[관련 권장사항:

javascript 비디오 튜토리얼

, 웹 프론트엔드]

위 내용은 자바스크립트와 es6의 차이점은 무엇인가요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.