Então, o que é ES6?

Antonio Milesi Bastos
devexpert
Published in
2 min readFeb 20, 2017

--

Vamos dar uma pausa nos posts sobre React e falar um pouco sobre o JavaScript Moderno

JavaScript Moderno

Nos velhos tempos, você podia apenas incluir uma tag <script> no cabeçalho da sua página, e seu JavaScript rodaria como esperado. Hoje em dia, nós pré-processamos nosso JavaScript para ter acesso a features experimentais e extensões da linguagem como JSX.

Babel

Babel é a principal ferramenta usada para pré-processar JavaScript. Babel é um parser altamente configurável que permite que usemos features experimentais e extensões, compilando de volta para o JavaScript antigo que pode ser suportado em uma ampla quantidade de plataformas. Se uma plataforma não suporta nativamente uma feature ES6 como Map(), o Babel não será capaz de ajudar completamente — mas em muitos casos ele pode replicar as APIs que faltam para prover essa funcionalidade.

Babel permite o debug do código-fonte incluindo source maps com o JavaScript compilado. Os interpretadores JavaScript executarão o código compilado, mas mapearão o código-fonte no debugger para que você possa debuga-lo em vez do (geralmente muito feio) código compilado.

Configuração do Babel

Você pode configurar o Babel de diversas maneiras. A mais comum é incluir um arquivo .babelrc na raiz do seu projeto. Esse arquivo deve especificar quais features JS experimentais habilitar e quais plugins usar (JSX).

Então, o que é ES6?

ECMAScript é a especificação usada para implementar a linguagem JavaScript. ES6, ou ECMAScript 6, é a primeira atualização significativa para a linguagem desde ES5 que foi inicialmente lançado em 2009.

Muitos recursos ES6 já estão disponíveis em engines modernos de JavaScript. Usar Babel, no entanto, nos dará acesso a muitos mais recursos, garantindo ao mesmo tempo que nosso JavaScript será executado em mais plataformas.

ES6 Highlights

Vamos dar uma olhada em alguns desses novos recursos da linguagem JavaScript e como eles são compilados pelo Babel. Há uma grande quantidade de recursos de linguagem para percorrer, por isso, vamos ver isso no próximo post.

--

--

I have devoted my journey to uncover better ways of develop software by doing it and helping others to do so.