JavaScript ES6
- Página Anterior JS 2009 (ES5)
- Próxima Página JS 2016
O que é ECMAScript 6?
ECMAScript 6 também é chamado de ES6 e ECMAScript 2015.
Alguns a chamam de JavaScript 6.
Este capítulo introduz algumas novas funcionalidades do ES6.
- JavaScript let
- JavaScript const
- Potência (**)
- Valores padrão de parâmetros
- Array.find()
- Array.findIndex()
Suporte de navegadores para ES6 (ECMAScript 2015)
Safari 10 e Edge 14 foram os primeiros navegadores a suportar completamente o ES6:
Chrome 58 | Edge 14 | Firefox 54 | Safari 10 | Opera 55 |
Jan 2017 | Aug 2016 | Mar 2017 | Jul 2016 | Aug 2018 |
JavaScript let
A instrução let permite que você declare variáveis com escopo de bloco.
Exemplo
var x = 10; // Aqui x é 10 { let x = 2; // Aqui x é 2 } // Aqui x é 10
JavaScript const
const
A instrução permite que você declare constantes (variáveis JavaScript com valores constantes).
Constantes são semelhantes a let
Variáveis, mas não podem mudar de valor.
Exemplo
var x = 10; // Aqui x é 10 { const x = 2; // Aqui x é 2 } // Aqui x é 10
em nossa JavaScript Let / Const Leia mais sobre let
e const
do conteúdo.
operador de exponenciação
O operador de exponenciação (**
A elevada (**) a primeira operando à potência da segunda operando.
Exemplo
var x = 5; var z = x ** 2; // O resultado é 25
x ** y
o resultado é Math.pow(x,y)
Igual:
Exemplo
var x = 5; var z = Math.pow(x,2); // O resultado é 25
Valores padrão de parâmetros
ES6
Permite que os parâmetros da função tenham valores padrão.
Exemplo
function myFunction(x, y = 10) { // y é 10 se não for passado ou undefined return x + y; } myFunction(5); // Retornará 15
Array.find()
find()
O método retorna o valor do primeiro elemento do array passado pelo teste da função.
Neste exemplo, busca (retorna) o primeiro elemento (valor) maior que 18:
Exemplo
var numbers = [4, 9, 16, 25, 29]; var first = numbers.find(myFunction); function myFunction(value, index, array) { return value > 18; }
Atenção, esta função aceita 3 parâmetros:
- Valor do item
- Índice do item
- O próprio array
Array.findIndex()
findIndex()
O método retorna o índice do primeiro elemento do array passado pelo teste da função.
Este exemplo determina o índice do primeiro elemento maior que 18:
Exemplo
var numbers = [4, 9, 16, 25, 29]; var first = numbers.findIndex(myFunction); function myFunction(value, index, array) { return value > 18; }
Atenção, esta função aceita 3 parâmetros:
- Valor do item
- Índice do item
- O próprio array
Nova propriedade de número
ES6 adicionou as seguintes propriedades ao objeto Number:
- EPSILON
- MIN_SAFE_INTEGER
- MAX_SAFE_INTEGER
Exemplo
var x = Number.EPSILON;
Exemplo
var x = Number.MIN_SAFE_INTEGER;
Exemplo
var x = Number.MAX_SAFE_INTEGER;
Novo método de número
ES6 adicionou 2 novos métodos ao objeto Number:
- Number.isInteger()
- Number.isSafeInteger()
Método Number.isInteger()
Se o parâmetro for um inteiro, então Number.isInteger()
O método retorna verdadeiro
.
Exemplo
Number.isInteger(10); // Retorna true Number.isInteger(10.5); // Retorna false
Método Number.isSafeInteger()
Inteiros seguros podem ser representados com precisão como números de precisão dupla.
Se o parâmetro for um inteiro seguro, então Number.isSafeInteger()
O método retorna verdadeiro
.
Exemplo
Number.isSafeInteger(10); // Retorna true Number.isSafeInteger(12345678901234567890); // Retorna false
Inteiros seguros são todos os inteiros de -(253 - 1) a +(253 - 1).
Isso é seguro: 9007199254740991. Isso não é seguro: 9007199254740992.
Novo método global
ES6 adicionou 2 novos métodos globais de número:
- isFinite()
- isNaN()
Método isFinite()
Se o parâmetro for Infinity
ou NaN
então global isFinite()
O método retorna false.
Caso contrário, retorna true:
Exemplo
isFinite(10/0); // Retorna false isFinite(10/1); // Retorna true
Método isNaN()
se o parâmetro for NaN
então global isNaN()
O método retorna verdadeiro
. Caso contrário, retorna falso
:
Exemplo
isNaN("Hello"); // Retorna true
Função de Seta (Arrow Function)
As funções de seta permitem usar uma sintaxe mais curta para escrever expressões de função.
Você não precisa function
Palavras-chave,return
Palavras-chave eChaves.
Exemplo
// ES5 var x = function(x, y) { return x * y; } // ES6 const x = (x, y) => x * y;
As funções de seta não têm o próprio this
. Eles não são apropriados para definirMétodos de objeto.
As funções de seta não são promovidas. Elas devem ser usadasAntespara definir.
usar const
em vez de usar var
Mais seguro, pois a expressão de função sempre é um valor constante.
Se a função é uma única instrução, ela pode ser omitida return
Palavras-chave e chaves. Portanto, manter elas pode ser um bom hábito:
Exemplo
const x = (x, y) => { return x * y };
- Página Anterior JS 2009 (ES5)
- Próxima Página JS 2016