🧙♂️ ES6? ECMAScript? Entenda o que isso tem a ver com o Javascript
ES6 se refere a 6ª versão do ECMAScript.
ECMAScript é uma especificação de uma linguagem de script e o Javascript é a implementação dessa especificação.
O ECMAScript existe pois cada browser, seja chrome, firefox ou qualquer outro, possui diferentes implementações para que você possa rodar seu código Javascript, mas todos devem seguir a mesma especificação.
Imagina se para cada browser tivesse uma especificação diferente? Seria uma loucura
Algumas features novas no ES6
// Declaração de variáveis com let e const
let varLet = 123;
const varConst = 456;
// Arrow function
const arrowFunction = () => {};
// Classes
class Classes {}
// Template string
const templateStr = `${varLet} ${varConst}`;
// Promises
const delay = (duration = 0) =>
new Promise((resolve, reject) => {
setTimeout(resolve, duration);
});
await delay(1000)
// E muito mais ...
ES7
// Array includes
[1, 2, 3].includes(1) // => true
[1, 2, 3].includes(9) // => false
// Operador de exponenciação
10 ** 3 // => 10 * 10 * 10 = 1000
ES8
// Async function
const asyncFunc = async () => {
await delay();
}
// Object.entries e Object.values
const obj = { siga: 'agora', like: true }
Object.entries(obj)
// => [['siga', 'agora'], ['like', true]]
Object.values(obj)
// => ['agora', 'true']
// E muito mais ...
E existem varias outras versões como ES9, ES10, etc.
Se você quer ver todas as versões e entender mais sobre: