Ну, я могу сказать, что у нас есть последняя версия ECMA262:
Здесь, в некотором примере из 10-го издания, представлены несколько новых встроенных функций: flat и flatMap:
function TEST_Flats() {
const arr = ['a', 'b', ['c', 'd']];
const flattened = arr.flat();
console.log(flattened);
}
Из других выпусков у нас есть:
function TEST_REST_SPREAD() {
// ECMAScript® 2018 Language Specification (ECMA-262, 9th edition, June 2018)
const arr1 = [10, 20, 30];
const arr2 = [40, 50];
// make a copy of arr1
const copy = [...arr1];
console.log(copy);
// merge arr2 with arr1
const merge = [...arr1, ...arr2];
console.log(merge);
}
А
function TEST_PAD() {
// ECMAScript® 2017 Language Specification (ECMA-262, 8th edition, June 2017)
let data = { "King" : "Jon Snow",
"Queen" : "Daenerys Targaryen",
"Hand" : "Tyrion Lannister"}
console.log(Object.entries(data));
console.log(Object.values(data));
console.log('a'.padStart(5, 'xy'))
console.log('a'.padStart(4, 'xy'))
console.log('1234'.padStart(2, '#'))
console.log('###'.padStart(10, '0123456789'))
console.log('a'.padStart(10))
console.log('a'.padEnd(5, 'xy'))
console.log('a'.padEnd(4, 'xy'))
console.log('1234'.padEnd(2, '#'))
console.log('###'.padEnd(10, '0123456789'))
console.log('a'.padEnd(10))
}
function TEST_PropertyDescriptors() {
// ECMAScript® 2017 Language Specification (ECMA-262, 8th edition, June 2017)
const obj = {
id: 123,
get bar() { return 'abc' },
};
console.log(Object.getOwnPropertyDescriptors(obj));
}