ECMA스크립트 2017
JavaScript 명명 규칙은 ES1, ES2, ES3, ES5 및 ES6에서 시작되었습니다.
그러나 ECMAScript 2016 및 2017은 ES7 및 ES8이라고 하지 않았습니다.
2016년부터 새 버전의 이름은 연도별로 지정됩니다(ECMAScript 2016/2017/2018).
ECMAScript 2017의 새로운 기능
이 장에서는 ECMAScript 2017의 새로운 기능을 소개합니다.
자바스크립트 문자열 패딩
ECMAScript 2017에는 두 개의 String 메서드가 추가되었습니다 . 하나는 문자열의 시작 padStart
과 padEnd
끝에서 패딩을 지원하기 위한 것입니다.
예시
let str = "5";
str = str.padStart(4,0);
// result is 0005
예시
let str = "5";
str = str.padEnd(4,0);
// result is 5000
Internet Explorer에서는 문자열 패딩이 지원되지 않습니다.
Firefox 및 Safari는 JavaScript 문자열 패딩을 지원하는 최초의 브라우저였습니다.
Chrome 57 | Edge 15 | Firefox 48 | Safari 10 | Opera 44 |
Mar 2017 | Apr 2017 | Aug 2016 | Sep 2016 | Mar 2017 |
JavaScript 개체 항목
ECMAScript 2017 Object.entries
은 객체에 새로운 메소드를 추가합니다.
Object.entries() 메서드는 객체에 있는 키/값 쌍의 배열을 반환합니다.
예시
const person = {
firstName : "John",
lastName : "Doe",
age : 50,
eyeColor : "blue"
};
document.getElementById("demo").innerHTML =
Object.entries(person);
Object.entries()를 사용하면 루프에서 객체를 쉽게 사용할 수 있습니다.
예시
const fruits = {Bananas:300, Oranges:200, Apples:500};
let text = "";
for (let [fruit, value] of Object.entries(fruits)) {
text += fruit + ": " + value + "
";
}
또한 Object.entries()를 사용하면 객체를 맵으로 간단하게 변환할 수 있습니다.
예시
const fruits = {Bananas:300, Oranges:200, Apples:500};
const myMap = new Map(Object.entries(fruits));
Chrome 및 Firefox는 다음을 지원하는 최초의 브라우저였습니다
Object.entries
.
Chrome 47 | Edge 14 | Firefox 47 | Safari 10.1 | Opera 41 |
Jun 2016 | Aug 2016 | Jun 2016 | Mar 2017 | Oct 2016 |
자바스크립트 객체 값
Object.values
와 유사 Object.entries
하지만 객체 값의 단일 차원 배열을 반환합니다.
예시
const person = {
firstName : "John",
lastName : "Doe",
age : 50,
eyeColor : "blue"
};
document.getElementById("demo").innerHTML =
Object.values(person);
Firefox와 Chrome은 다음을 지원하는 최초의 브라우저였습니다
Object.values
.
Chrome 54 | Edge 14 | Firefox 47 | Safari 10.1 | Opera 41 |
Oct 2016 | Aug 2016 | Jun 2016 | Mar 2017 | Oct 2016 |
자바스크립트 비동기 함수
시간 초과를 기다리는 중
async function myDisplay() {
let myPromise = new Promise(function(myResolve, myReject) {
setTimeout(function() { myResolve("I love You !!"); }, 3000);
});
document.getElementById("demo").innerHTML = await myPromise;
}
myDisplay();
Firefox와 Chrome은 비동기 JavaScript 기능을 지원하는 최초의 브라우저였습니다.
Chrome 55 | Edge 15 | Firefox 52 | Safari 11 | Opera 42 |
Dec 2016 | Apr 2017 | Mar 2017 | Sep 2017 | Dec 2016 |