JavaScript - verificar se todos os itens de um array são pares ou ímpares
Dica publicada em Javascript / Introdução
JavaScript - verificar se todos os itens de um array são pares ou ímpares
Dado um array numérico, nossa tarefa é retornar true se todos os elementos forem pares ou false se algum elemento for ímpar.
Para o exercício vamos usar o método Array.prototype.every(), que retorna "true" se todos os valores de um array satisfizerem uma condição, caso contrário retorna "false".
Sintaxe:
Exemplo:
Explicando:
numbers.every( (e) => e % 2 === 0 )
Retorno: true
Onde:
Um método parecido é o Array.prototype.some(), que ao contrário de every() irá retornar "true" se pelo menos 1 elemento satisfizer a condição.
NOTA: se quiser testar se todos os itens da array são ímpares, basta mudar a expressão:
Para:
Para o exercício vamos usar o método Array.prototype.every(), que retorna "true" se todos os valores de um array satisfizerem uma condição, caso contrário retorna "false".
Sintaxe:
arr.every(callback(element[, index[, array]])[, thisArg])
Exemplo:
const numbers = [ 2, 4, 8, 20, 88, 6, 0 ] numbers.every( (e) => e % 2 === 0 )
Explicando:
numbers.every( (e) => e % 2 === 0 )
Retorno: true
Onde:
- every() é o método em si;
- o método será executado em todos os elementos da array, a função de callback recebe em "e" o valor de cada elemento;
- e % 2 === 0 pega o valor de cada elemento, divide por dois e compara o resto da divisão. Se o resto da divisão for 0, o número é par;
- numbers.every() irá retornar "true" somente se todos os elementos testarem positivo para a condição acima.
Um método parecido é o Array.prototype.some(), que ao contrário de every() irá retornar "true" se pelo menos 1 elemento satisfizer a condição.
NOTA: se quiser testar se todos os itens da array são ímpares, basta mudar a expressão:
numbers.every( (e) => e % 2 === 0 )
Para:
numbers.every( (e) => e % 2 !== 0 )
Muito bom.
___________________________________________________________