ECMAScript 2017(ES8) 기능 개요는 ES8 릴리스에서 편집되었으며 여기에 저자의 최신 JavaScript 개발: 구문 기본 및 실용 기술 기사 시리즈에 요약된 주요 새로운 기능이 있습니다. 또한 매주 프런트 엔드를 팔로우하실 수 있습니다. 직접 정보를 얻으려면 시리즈를 나열하세요.
ECMAScript 2017 또는 ES8은 2017년 6월 말에 TC39에서 공식적으로 출시되었습니다. 여기에서 전체 버전을 찾아볼 수 있습니다. ES8의 대표적인 기능에는 문자열 채우기, 객체 값 탐색 및 객체 속성 설명자 획득이 포함됩니다. 함수 매개변수 목록 및 호출의 쉼표, 비동기 함수, 공유 메모리 및 원자적 연산 등
ES8에는 padStart 및 padEnd라는 내장 문자열 채우기 기능이 추가되었습니다. 이 함수는 문자열의 머리 부분이나 끝 부분을 채워 문자열이 고정 길이에 도달하도록 보장합니다. 개발자는 패딩 문자열을 지정하거나 사용할 수 있습니다. 함수는 다음과 같이 선언됩니다:
str.padStart(targetLength [, padString]) str.padEnd(targetLength [, padString])
위에 표시된 것처럼 함수의 첫 번째 매개변수는 최종 생성된 문자열의 길이인 대상 길이입니다.
'es8'.padStart(2); // 'es8' 'es8'.padStart(5); // ' es8' 'es8'.padStart(6, 'woof'); // 'wooes8' 'es8'.padStart(14, 'wow'); // 'wowwowwowwoes8' 'es8'.padStart(7, '0'); // '0000es8' 'es8'.padEnd(2); // 'es8' 'es8'.padEnd(5); // 'es8 ' 'es8'.padEnd(6, 'woof'); // 'es8woo' 'es8'.padEnd(14, 'wow'); // 'es8wowwowwowwo' 'es8'.padEnd(7, '6'); // 'es86666'
Object.values 함수는 지정된 객체의 열거 가능한 속성 값의 배열을 반환합니다. 배열의 값 순서는 for-in과 일치합니다. 루프 함수 선언은 다음과 같습니다.
Object.values(obj)
첫 번째 매개변수 obj는 탐색해야 하는 대상 객체입니다. 객체 또는 배열일 수 있습니다(배열은 키가 첨자인 객체로 간주될 수 있습니다).
const obj = { x: 'xxx', y: 1 };
Object.values(obj); // ['xxx', 1]
const obj = ['e', 's', '8']; // same as { 0: 'e', 1: 's', 2: '8' };
Object.values(obj); // ['e', 's', '8']
// when we use numeric keys, the values returned in a numerical
// order according to the keys
const obj = { 10: 'xxx', 1: 'yyy', 3: 'zzz' };
Object.values(obj); // ['yyy', 'zzz', 'xxx']
Object.values('es8'); // ['e', 's', '8']
const obj = { x: 'xxx', y: 1 };
Object.entries(obj); // [['x', 'xxx'], ['y', 1]]
const obj = ['e', 's', '8'];
Object.entries(obj); // [['0', 'e'], ['1', 's'], ['2', '8']]
const obj = { 10: 'xxx', 1: 'yyy', 3: 'zzz' };
Object.entries(obj); // [['1', 'yyy'], ['3', 'zzz'], ['10': 'xxx']]
Object.entries('es8'); // [['0', 'e'], ['1', 's'], ['2', '8']]
Object.getOwnPropertyDescriptor(obj, prop)obj는 소스 객체이고 prop은 확인해야 하는 것입니다. 결과에 포함된 키는 구성 가능, 열거 가능, 쓰기 가능, 가져오기, 설정 가능합니다. 그리고 가치.
const obj = { get es8() { return 888; } };
Object.getOwnPropertyDescriptor(obj, 'es8');
// {
// configurable: true,
// enumerable: true,
// get: function es8(){}, //the getter function
// set: undefined
// }
function es8(var1, var2, var3,) {
// ...
}
es8(10, 20, 30,);
function fetchTextByPromise() {
return new Promise(resolve => {
setTimeout(() => {
resolve("es8");
}, 2000);
});
}
async function sayHello() {
const externalFetchedText = await fetchTextByPromise();
console.log(`Hello, ${externalFetchedText}`); // Hello, es8
}
sayHello();
console.log(1);
sayHello();
console.log(2);
// 调用结果
1 // immediately
2 // immediately
Hello, es8 // after 2 seconds
위 내용은 최신 ES8 기능 개요의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!