Segue a maneira com elaborei o referido exercício:
console.log("\n ******* Exercício Mãos na Massa ******");
// Array de clientes inicial
let clientes = [
{
nome: "Machado de Assis",
idade: 186,
cpf: "111.222.333-22",
email: "machado@gmail.com"
},
{
nome: "Victor Hugo",
idade: 223,
cpf: "222.333.444-33",
email: "victor-h@gmail.com"
},
{
nome: "Fiórdor Dostoiévski",
idade: 204,
cpf: "222.444.555-44",
email: "dostoievski@gmail.com"
},
{
nome: "Liev Tolstói",
idade: 197,
cpf: "333.444.555-55",
email: "l.tostoi@gmail.com"
},
];
// function para mostrar cliente
function mostrarClientes() {
console.log("\n ********** CLIENTES CADASTRADOS **********");
if (clientes.length === 0) {
console.log("Nenhum cliente cadastrado!");
} else {
clientes.forEach((cliente, index) => {
console.log(`\n ${index + 1}. ${cliente.nome}`); // índice começãndo com 1
console.log(`Idade: ${cliente.idade} anos.`);
console.log(`CPF: ${cliente.cpf}`);
console.log(`Email: ${cliente.email}`);
});
}
}
// Função para adicionar Clientes
function adicionarCliente(nome, idade, cpf, email) {
const novoCliente = {
nome: nome,
idade: idade,
cpf: cpf,
email: email
};
clientes.push(novoCliente);
console.log(`Cliente ${nome} - adicionado com sucesso!`);
}
// Função para remover clientes
function removerCliente(nome) {
const index = clientes.findIndex (cliente => cliente.nome === nome);
if (index !== -1) {
clientes.splice(index, 1);
console.log(`\n Cliente: ${nome} foi removido com sucesso!`);
} else {
console.log(`Cliente ${nome} não foi encontrado!`);
}
}
// Function para buscar clientes
function buscarCliente(nome) {
const cliente = clientes.find( c => c.nome === nome);
if (cliente) {
console.log(" \n Cliente Encontrado");
console.log(`Nome: ${cliente.nome}`);
console.log(`Idade: ${cliente.idade}`);
console.log(`CPF: ${cliente.cpf}`);
console.log(`Email: ${cliente.email}`);
return cliente;
} else {
console.log(`Cliente: ${nome} não encontrado!`);
return null;
}
}
console.log(" ===== SISTEMA DE CLIENTES =====");
mostrarClientes();
adicionarCliente("Graciliano Ramos", 133, "444.555.666-66", "graciliano.r@gmail.com");
// mostrar lientes após a adição
mostrarClientes();
buscarCliente("Victor Hugo");
removerCliente("Machado de Assis");
mostrarClientes(); // mostra clientes restantes
removerCliente("Paulo"); // remover cliente que não está cadastrado