Questão A
Problema:
A lógica da programação do lado do cliente de uma página web é realizada pela linguagem javascript. Como toda linguagem de programação, ela evolui com o passar do tempo para adicionar novas funcionalidades criadas para outras linguagens e que acabam caindo no gosto popular. Recentemente o javascript recebeu uma atualização chamada de javascript ES7, que facilita a forma de criar programas.
Questões:
Escreva um texto resumido apresentando 5 (cinco) novidades introduzidas com o Javascript ES7. Apresente exemplos comparativos para cada uma das novidades.
Dicas:
· Use uma fonte adequada para escrever os programas, como Courier New ou Consolas.
· Leia o capítulo 4 do livro texto.
· Assista as videoaulas 5 e 6.
Soluções para a tarefa
Uma das novidades trazidas na atualização do JavaScript para o JavaScript ES7 foi em relação as novas funcionalidades, como o array.prototype.includes, Exponentiation Operator e o String padding.
O array.prototype.includes é uma funcionalidade semelhante ao indexOf, porém, retorna true ou false. Ela, além de retornar um valor booleano e não só a posição do dado, funciona também com NaN (não é um número). Ainda há outro parâmetro que pode ser utilizado com ela que é o fromIndex, que permite procurar um dado a partir de uma determinada posição. Ou seja, o seu uso facilita muito a verificação de se um número está ou não em um array.
Enquanto o exponentiation operator permite a realização do calculo da exponencial de um número de forma muito mais simples. Antes, tinhamos que usar a biblioteca math.pow ou criar uma função recursiva para calcular a exponencial agora podemos utilizar só o operador ( ** ). Isso é muito útil para desenvolvedores que fazem softwares envolvendo cálculos matemáticos e é útil no caso de 3D, realidade virtual, SVG ou ainda na visualização de dados.
Já para o String padding, podemos utilizar dois métodos o padStart e o padEnd. Assim:
String.prototype.padStart e String.prototype.padEnd
Essa funcionalidade permite que a gente troque uma determinada string com qualquer texto para garantir que a string corresponda a um determinado tamanho.
Como disse anteriormente, há dois métodos que podemos utilizar, o primeiro é o padStart() ele retorna uma string de um determinado comprimento (targetLength), inserindo almofadas no início. Essas almofadas consistem em uma string determinada, e que se repete caso seja necessário, até atingir o comprimento desejado. Esse preenchimento é aplicado desde o início (esquerda) da string atual.
O padEnd() é análogo ao padStart() sendo que invés do preenchimento ser aplicado do inicio (esquerda) da string ele é aplicado no final(direita) da string atual.
Espero ter ajudado, bons estudos :)