Desafio JS: Transformando um Array em um Objeto contador
8
0

Desafio JS: Transformando um Array em um Objeto contador

👋 Opa, Gabriel e Pedro aqui e seja bem-vindo para mais um episódio da nossa newsletter semanal, a Challenge House. Toda segunda-feira, temos um desafio JavaScript para você estudar e aprimorar os seus conhecimentos em programação.

Gabriel e Pedro
3 min
8
0

👋 Opa, Gabriel e Pedro aqui e seja bem-vindo para mais um episódio da nossa newsletter semanal, a Challenge House. Toda segunda-feira, temos um desafio JavaScript para você estudar e aprimorar os seus conhecimentos em programação.

Se você ainda não é um inscrito e quer se desafiar, não deixe de seguir a gente. A solução será enviada na sua caixa de entrada na quinta-feira👇

Seguir meu Canal

🪓 Afiando o machado

Email image

Classificação do desafio deste episódio:

  • Nível: intermediário
  • Conteúdos JavaScript: array e objects

No JavaScript, Objetos e Arrays são alguns dos tipos de armazenar dados mais complexos.

Você provavelmente já está mais confortável com objetos do que pensa, porque JavaScript adora objetos! Muitos componentes da linguagem são, na verdade, objetos por debaixo dos panos, e mesmo as partes que não são - como strings ou numbers - podem agir como objetos em alguns casos.

Objetos podem ser atribuídos a variáveis como qualquer tipo JavaScript. A sua sintaxe segue o seguinte padrão:

const challengeHouse = {
level: 1
subject: 'Array'
};

Ao preencher um objeto, seguimos uma organização conhecida com key-value. Uma key é como um nome de variável que aponta para um local na memória que detém um value. O valor de uma key pode ser de qualquer tipo.

No exemplo acima, level é uma key e 1 é o seu valor.

Por outro lado, Arrays são uma maneira do JavaScript de fazer listas. Eles podem armazenar qualquer tipo de dados (incluindo strings, numbers e booleans).

Assim como as listas, os arrays são ordenados, significando que cada item tem uma posição numerada e sua sintaxe segue o seguinte padrão:

const challengesLevel = ['iniciante', 'intermediário', 'avançado']

Apesar de serem formatos diferentes de dados, ambos não são excludentes e podem coexistir em um mesmo código sem problema nenhum.

Inclusive, é possível fazer adaptações para um se tornar o outro conforme a necessidade de um determinado código. Com isso em mente, vamos para o desafio!


🧑‍💻 Praticando: Instruções para o desafio

Depois de ter o machado afiado com os conceitos necessários para colocar o conhecimento em prática, aqui estão as instruções que devem ser seguidas:

  1. Crie uma função que receba um array de números
  2. Converta o array em um objeto
  3. Para cada número único do array, crie uma key no objeto. O valor da respectiva key deverá ser o número de vezes que o número apareceu no array fornecido
  4. As keys do objeto devem estar em ordem crescente

Para ilustrar o que está sendo requisitado, observe o seguinte exemplo:

challengeFunction([1, 3, 4, 4]);
challengeFunction([8, 7, 6, 5]);

💡 Dica de ouro

Lembre-se quando queremos passar de elemento por elemento, fazemos sempre uma iteração com loop.

Boa sorte!


Se você achou o conteúdo dessa newsletter interessante, pense com carinho em fazer alguma dessas coisas: 

  1. ❤️ Compartilhar com os amigos - é com a sua ajuda que iremos levar o Challenge House para cada vez mais pessoas.

Compartilhar conteúdo

  2. ✉️ Se inscrever na nossa newsletter - se ainda não é, iremos ficar muito felizes com a sua inscrição.

Seguir meu Canal

Tenha uma boa semana,

Gabriel e Pedro 👋