1
resposta

[Sugestão] Desafio Hora de Praticar 10 - Busca Aluno no array

Elaborei o exercício no VSCode fazendo dois arquivos um HTML e outro Javascript conforme segue:

<!DOCTYPE html>
<html lang="pt-BR">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Verificação do Aluno</title>
</head>
<body>
    <h1>Verificação do Aluno</h1>

    <!-- Campo de seleção para escolher o tipo de busca -->
    <label for="tipoBusca">Buscar por:</label>
    <select id="tipoBusca">
        <option value="id">ID</option>
        <option value="nome">Nome</option>
    </select><br><br>

    <!-- Campo de entrada para o valor (ID ou Nome) -->
    <label for="valorInput">Digite o ID ou Nome:</label><br>
    <input type="text" id="valorInput" placeholder="Ex. 2 ou Maria"><br><br>

    <!-- Botão para realizar a verificação -->
    <button onclick="verificarAluno(alunos)">Verificar Aluno</button>

    <!-- Resultado da verificação -->
    <p id="resultado"></p>

    <!-- Área para exibir a lista de alunos -->
    <div id="listaAlunos"></div>

    <!-- Vinculando o arquivo JavaScript -->
    <script src="script.js"></script>
</body>
</html>

// Array de objetos representando os alunos
const alunos = [
    { id: 1, nome: 'João', idade: 20 },
    { id: 2, nome: 'Maria', idade: 22 },
    { id: 3, nome: 'Paulo', idade: 21 },
    { id: 4, nome: 'Zeferindo', idade: 19 }
];

function verificarAluno(alunos) {
    // Obter o tipo de busca selecionado (ID ou Nome)
    const tipoBusca = document.getElementById('tipoBusca').value;

    // Obter o valor inserido pelo usuário
    const valorInput = document.getElementById('valorInput').value;

    // Verifica se o valor foi inserido
    if (!valorInput) {
        alert('Por favor insira um valor para buscar');
        return;
    }

    // Verificar se o aluno está presente no array
    let alunoEncontrado;

    if (tipoBusca === 'id') {
        // Buscar pelo ID
        const id = parseInt(valorInput);
        alunoEncontrado = alunos.find(aluno => aluno.id === id);
    } else if (tipoBusca === 'nome') {
        // Busca pelo nome
        alunoEncontrado = alunos.find(aluno => aluno.nome.toLowerCase() === valorInput.toLowerCase());
    }

    // Exibe o resultado na página
    const resultadoElement = document.getElementById('resultado');
    if (alunoEncontrado) {
        resultadoElement.textContent = `Aluno encontrado: ${alunoEncontrado.nome} (ID:${alunoEncontrado.id}, Idade:${alunoEncontrado.idade})`;
    } else {
        resultadoElement.textContent = 'Aluno não encontrado.';
    }

    // Limpar o campo de input após a pesquisa
    document.getElementById('valorInput').value = '';
}
1 resposta

Oi, Paulo! Como vai?

Obrigada por compartilhar seu código com a comunidade Alura.

Gostei de como você estruturou a busca no array de alunos, permitindo a pesquisa tanto por ID quanto por nome. A forma como você usa find para localizar os alunos é bem prática.

Continue firme nos estudos.

Alura
Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!