Comparar arrays
professor, pode me ajudar nessa duvida sobre array e objetos?
preciso comparar o valor da array gabarito com a array jogos (jogo.jogo)
tenho que listar no console o nome dos jogadores que acertaram, que no caso seria Bruna e Josiane nesse exemplo, veja o codigo abaixo
let gabarito = [10,22,33,41,55,68]
let jogador = ""
console.log("Gabarito " +gabarito)
let jogos = [ {nome: "Renato", jogo: [6,18,27,36,44,66]},
{nome: "Vanessa", jogo: [7,13,20,30,52,61]},
{nome: "Bruna", jogo: [10,22,33,41,55,68]},
{nome: "Helto", jogo: [12,28,34,40,58,65]},
{nome: "Josiane", jogo: [10,22,33,41,55,68]}
];
jogos.forEach((jogo)=>{
console.log("Jogos " + jogo.jogo)
})
Olá, Renato!
Tudo bem?
Você pode usar a função includes para validar se contém o item no array:
let gabarito = [10,22,33,41,55,68]
let usuarios = [
{nome: "Renato", jogos: [6,18,27,36,44,66]},
{nome: "Vanessa", jogos: [7,13,20,30,52,61]},
{nome: "Bruna", jogos: [10,22,33,41,55,68]},
{nome: "Helto", jogos: [12,28,34,40,58,65]},
{nome: "Josiane", jogos: [10,22,33,41,55,68]}
];
usuarios.forEach((usuario) => {
usuario.jogos.forEach((jogo) => {
if (gabarito.includes(jogo)) {
console.log(`O usuário ${usuario.nome} acertou o jogo ${jogo}`)
}
})
})
perfeito Professor Carlos,muito obrigado,
mais nesse caso o resultado foi:
O usuário Bruna acertou o jogo 10
O usuário Bruna acertou o jogo 22
O usuário Bruna acertou o jogo 33
O usuário Bruna acertou o jogo 41
O usuário Bruna acertou o jogo 55
O usuário Bruna acertou o jogo 68
O usuário Josiane acertou o jogo 10
O usuário Josiane acertou o jogo 22
O usuário Josiane acertou o jogo 33
O usuário Josiane acertou o jogo 41
O usuário Josiane acertou o jogo 55
O usuário Josiane acertou o jogo 68
como faria para apenas mostrar os nomes dos ganhadores, no caso Bruna e Josiane?
Seria simplesmente dar um console assim?
console.log(`O usuário ${usuario.nome}`)
vou estudar sobre includes, fora o include haveria outra forma?
let gabarito = [10,22,33,41,55,68]
let usuarios = [
{nome: "Renato", jogos: [6,18,27,36,44,66]},
{nome: "Vanessa", jogos: [7,13,20,30,52,61]},
{nome: "Bruna", jogos: [10,22,33,41,55,68]},
{nome: "Helto", jogos: [12,28,34,40,58,65]},
{nome: "Josiane", jogos: [10,22,33,41,55,68]}
];
let ganhadores = []
usuarios.forEach((usuario) => {
usuario.jogos.forEach((jogo) => {
if (gabarito.includes(jogo)) {
if (!ganhadores.includes(usuario)) {
ganhadores.push(usuario)
}
}
})
})
console.log('Ganhadores: ')
ganhadores.forEach(usuario => {
console.log(usuario.nome)
})
Precisa estar logado para conseguir responder a este ticket!
Clique Aqui Para Entrar!