👨💻 O que foi desenvolvido
No time de desenvolvimento, fiquei responsável por implementar o código de funções que resolvem problemas com respostas pré-determinadas. Foi utilizado lógica de programação para ajudar na análise de cada problema e resposta esperada, facilitando a implementação do código de cada uma das funções.
Para rodar localmente
-
Clone o repositório
- Use o comando:
git clone git@github.com:ligiabicalho/javascript-functions.git - Entre na pasta do repositório que você acabou de clonar:
cd javascript-functions
- Use o comando:
-
Instale as dependências
npm install
Implemente a função splitSentence que divide uma frase de acordo com a quantidade de palavras
A função splitSentence recebe uma string como parâmetro e deve retornar um array com as palavras separadas.
Exemplo: se a função receber a string 'go Trybe', o retorno deverá ser ['go', 'Trybe'].
Implemente a função footballPoints que calcula a pontuação de um time de futebol em um campeonato a partir do número de vitórias e empates
A função footballPoints recebe o número de vitórias (wins) e o número de empates (ties) e retorna a quantidade de pontos que o time marcou em um campeonato. Para isso, considere que:
-
wins: é o número de vitórias e vale 3 pontos -
ties: é o número de empates e vale 1 ponto
Implemente a função addMusics que adiciona músicas a uma playlist
A função addMusics recebe o nome do artista (artistName), o nome da música (musicName) e o tempo da música (musicTime). Após trabalhar esses dados, eles deverão ser armazenados em um array chamado playlist. Para isso, considere que:
- Os valores acima devem ser enviados ao array, juntos, em formato de objeto.
Implemente a função moreExpensive que deverá retornar uma string contendo qual é o produto mais caro de acordo com uma categoria que será passada como parâmetro.
👉 Para esse exercício, utilize a base de dados do arquivo src/mcDonalds.js
A função moreExpensive deve receber a base de dados a ser trabalhada (data) e a categoria (category) do produto.
A função deve retornar uma string contendo o produto mais caro da seguinte forma:
O produto mais caro é:
nome do produto, que custa: R$preço do produto.
O preço do produto deverá ser apresentado contendo 2 casas decimais.
Implemente a função checkItem que deverá retornar se um determinado item existe ou não na base de dados
👉 Para esse exercício, utilize a base de dados do arquivo src/mcDonalds.js
A função checkItem deve receber a base de dados a ser trabalhada (data), a categoria (category) do produto e o produto a ser buscado (item).
A função deve retornar true caso o produto já exista na base de dados ou false caso não exista.
Implemente a função addNewItem que deverá adicionar um novo item caso esse item não exista na base de dados
👉 Para esse exercício, utilize a base de dados do arquivo src/mcDonalds.js
A função addNewItem deve receber a base de dados a ser trabalhada (data), a categoria (category) do produto, o produto a ser buscado (item) e as outras informações de um item: price, ingredients e calories.
-
A função deve retornar o novo item caso o produto ainda não exista na base de dados
-
Caso o item não exista, ele deve ser criado e adicionado à base de dados
-
Caso o item já exista, a função deve retornar a mensagem:
O produto: "nome do produto" já existe!
Implemente a função counterGender que deverá contar quantas pessoas existem na base de dados por gênero
👉 Para esse exercício, utilize a base de dados do arquivo src/data.json
A função counterGender deve receber a base de dados a ser trabalhada (data) e retornar a quantidade de pessoas do gênero male e female.
A função deve retornar as informações no formato de objeto conforme o exemplo:
{
male: 10,
female: 15
}Implemente a função filterState que deverá retornar todos os elementos que forem de um determinado estado
👉 Para esse exercício, utilize a base de dados do arquivo src/data.json
-
A função
filterStatedeve receber a base de dados a ser trabalhada (data) e o estado a ser filtrado (state). -
A função deve retornar um novo array contendo todos os elementos que são do estado filtrado.
Implemente a função changePicture que deverá alterar a propriedade "picture" de todos os elementos da base de dados
👉 Para esse exercício, utilize a base de dados do arquivo src/data.json
-
A função
changePicturedeve receber a base de dados a ser trabalhada (data) e o link (link) a ser colocado no valor atual da propriedade; -
O valor da propriedade "picture" que deve ser colocado em todos os elementos é:
https://picsum.photos/200/300; -
A função deve retornar um novo array contendo todos os elementos transformados.
Implemente a função generateReport que deverá gerar um relatório em forma de objeto, de várias informações da base de dados
👉 Para esse exercício, utilize a base de dados do arquivo src/data.json
-
A função
generateReportdeve receber a base de dados a ser trabalhada (data); -
A função
generateReportdeve retornar um objeto com várias informações:totalGuests: valor total de pessoas convidadas. O valor deve ser umnumber;totalGender: quantidade de pessoas por gênero. O valor deve ser umobject;avgAge: média de idade das pessoas. O valor deve ser umnumbercom 2 casas decimais;countries: array com todos os países representados.- Este array não pode conter valores repetidos - Pesquise sobre
Array.includes(); - Este array deve estar ordenado em ordem alfabética (A-Z) - Pesquise sobre
Array.sort().
- Este array não pode conter valores repetidos - Pesquise sobre
Exemplo de saída:
{
totalGuests: 104,
totalGender: {
male: 49,
female: 55
},
avgAge: 32.94,
countries: [
'Albania',
'Algeria',
'Anguilla',
'Argentina',
'Aruba',
'Azerbaijan',
'Bahrain',
'Bangladesh',
'Benin',
'Bermuda',
'Bolivia',
'Botswana',
'Bouvet Island',
'Brazil',
...
]
}