-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathcompras.ts
More file actions
29 lines (25 loc) · 827 Bytes
/
compras.ts
File metadata and controls
29 lines (25 loc) · 827 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
// 1. Definindo a interface para um item de compra
interface Item {
nome: string;
preco: number;
}
// 2. Criando uma função que recebe um array de Items
function calcularTotal(itens: Item[]): number {
let total = 0;
for (const item of itens) {
total += item.preco;
}
return total;
}
// 3. Criando um array de itens de exemplo
const carrinho: Item[] = [
{ nome: "Notebook", preco: 2500 },
{ nome: "Mouse", preco: 150 },
{ nome: "Teclado", preco: 300 }
];
// 4. Chamando a função e exibindo o resultado
const valorTotal: number = calcularTotal(carrinho);
console.log(`O valor total do carrinho é R$ ${valorTotal}`);
// Exemplo de erro:
// const itemInvalido = { nome: "Cadeira", preco: "500" };
// carrinho.push(itemInvalido); // Erro de compilação! A propriedade 'preco' está com o tipo errado.