Nut Free pt-br Explainer

Explicação de Sem nozes

Objetivo deste desafio: Usar o método de array .filter() para criar uma nova array que contenha apenas certos itens de outra array.

Passo a passo da solução: O método .filter() usa uma função como argumento (também conhecido como função retorno de chamada) e faz a iteração pela array usando cada item como argumento para o retorno de chamada (ou teste). Se o retorno de chamada for verdadeiro para um item, então esse item passou no teste e é copiado para uma nova array. A array original não é modificada.

A primeira linha de código importa uma array de código adicional, iceCreams, para que possa ser usada neste desafio.

Em seguida, a função nutAllergy é declarada. Ela usa um argumento, flavor e retorna esse sabor se não for 'pistachio'. Esta função é o retorno de chamada/teste que usaremos no método .filter() mais tarde em nosso código.

Abaixo da função nutAllergy, a variável nutFree é declarada. No código com o qual você começa, nutFree é o mesmo que a array iceCreams. Neste desafio, você usará o método .filter() para transformar nutFree em uma array de sabores de iceCreams que passam no teste nutFree.

Para concluir o desafio, adicione o método .filter(nutAllergy) após iceCreams. Agora, a array nutFree conterá apenas itens da array iceCreams que passarem no teste nutFree.

Após a declaração de variável nutFree, o laço for...of registrará cada item da array nutFree no console. Sem este código, não seríamos capazes de ver a mudança de uma array iceCreams não filtrada para uma array filtrada para excluir 'pistachio'.

Solução do código de exemplo:

(Toque abaixo para revelar)


import { iceCreams } from 'grasshopper.treats';

function nutAllergy(flavor) {

return flavor !== 'pistachio';

}

let nutFree = iceCreams.filter(nutAllergy);

for (let flavors of nutFree) {

console.log(flavors);

}

Conceitos de JavaScript: Métodos de array, .filter(), Declarações de variável com let, Laço for…of, Declarações de função, Importações, console.log()

Código Adicional (código oculto executado antes do código do desafio):

let iceCreams = ['vanilla', 'chocolate', 'cookies and cream', 'cookie dough', 'mint chocolate chip', 'pistachio', 'coffee']