기본 매개 변수에 ES6
에 ES6,를 넣을 수 있습니다 기본값으로 바로에의 서명은 기능입니다.
var calculateArea = function(height = 50, width = 80) {
// write logic
...
}
ES5 에서는 논리 또는 연산자를 사용하고있었습니다.
var calculateArea = function(height, width) {
height = height || 50;
width = width || 80;
// write logic
...
}
템플릿에서 리터럴 ES6
에 ES6,우리가 사용할 수 있는 새로운 구문을${PARAMETER}
시-쳤 문자열입니다.
var name = `Your name is ${firstName} ${lastName}.`
ES5 에서는 아래와 같이 문자열을 끊어야합니다.
var name = 'Your name is ' + firstName + ' ' + lastName + '.'
Es6 의 다중 줄 문자열
ES6 에서는 매우 간단합니다., 그냥 백 틱을 사용하십시오.
let poemData = `Johny Johny Yes Papa,
Eating sugar? No, papa!
Telling lies? No, papa!
Open your mouth Ah, ah, ah!`
ES5 에서는 아래 접근법을 사용해야했습니다.
var poemData = 'Johny Johny Yes Papa,\n'
+ 'Eating sugar? No, papa!\n'
+ 'Telling lies? No, papa!\n'
+ 'Open your mouth Ah, ah, ah!'
선언 및 할당 ES6
선언 및 할당 구문을 자바 스크립트는 표현을 가능하게 풀서 값을 배열,또는 속성을 목표에서,서로 별개 변수입니다.
var o = {p: 42, q: true};
var {p, q} = o;
console.log(p); // 42
console.log(q); // true
ES5 에서는 아래 접근법을 사용해야했습니다.
var o = {p: 42, q: true};
var p = o.p;
var q = o.q;
console.log(p); // 42
console.log(q); // true
강화체에서 리터럴 ES6
개체 리터럴 쉽게 빠르게 만들기체 특성을 가진 내부에 중괄호를 사용합니다.,
function getLaptop(make, model, year) {
return {
make,
model,
year
}
}
getLaptop("Apple", "MacBook", "2015");
ES5 에서는 아래 구문을 따라야했습니다.
function getLaptop(make, model, year) {
return {
make: make,
model: model,
year: year
}
}
getLaptop("Apple", "MacBook", "2015");
에 대한 더 많은 정보:https://dev.to/sarah_chima/enhanced-object-literals-in-es6-a9d
화살표수에 ES6
뚱뚱한 화살은 놀라운 것이기 때문에 당신의this
제대로 작동하,즉 this
동일한 값으로서의 컨텍스트 기능—지 않을 변화시킨다.
$('.btn').click((event) => {
this.doSomething()
});
ES5 에서는 _this=this or 를 사용해야했습니다.바인드(이).,
var _this = this;
$('.btn').click(function(event){
_this.doSomething();
});
에 대한 더 많은 정보:https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Functions/Arrow_functions
에서 약속 ES6
약속에 사용되는 비동기 실행합니다. ES6 에서는 아래에 표시된 화살표 기능으로 약속을 사용할 수 있습니다.
var asyncCall = new Promise((resolve, reject) => {
// do something async
resolve();
}).then(()=> {
console.log('Yay!');
})
ES5 에서는 setTimeout()을 사용해야합니다.
setTimeout(function(){
console.log('Yay!');
}, 1000);
에 대한 더 많은 정보:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise
블록 범위의 구조자 및 Const
let
는 새로운var
허용하는 범위 변수를 합니다.,그래서,주요 차이를 하고 var,var
범위한 가장 가까운 기능 블록고let
은 범위는 가장 가까운 바깥쪽 구획,수있는 보다 작은 기능 블록입니다.
에 ES6
에 ES5
올 때const
,그것은 단지 변경할 수 없고 그것은 또한 블록 범위는 다음과 같let
.
Es6 의 클래스
“class”키워드를 사용하여 ES6 에서 클래스를 만들 수 있습니다. Es5 에서의 클래스 생성 및 사용은 키워드 클래스가 없었기 때문에 후방의 고통이었습니다.,
나는 많은 맛이 있기 때문에 당신에게 ES5 클래스 생성의 예를 보여주지 않을 것입니다.
모듈 ES6
ES6 에는import
및export
피연산자가있는 모듈이 있습니다.
export var userID = 10;
export function getName(name) {
...
};
import 문을 사용하여 userID 변수 및 getName 메소드를 가져올 수 있습니다.나는 이것을 할 수 없다.
Leave a Reply