mobile theme mode icon
theme mode light icon theme mode dark icon
Random Question Casuale
speech play
speech pause
speech stop

Calcola il totale con lo sconto in JavaScript

Nel codice fornito ci sono alcuni problemi che potrebbero essere considerati "impropri" o non ottimali:

1. Istruzione `return` mancante: la funzione `calculate_total()` non restituisce nulla, il che significa che restituirà `unfine` per impostazione predefinita. Dovresti aggiungere un'istruzione `return` alla fine della funzione per specificare quale valore restituisce.
2. Variabili non utilizzate: alla variabile "sconto" viene assegnato un valore ma non viene mai utilizzata. Dovresti rimuovere il codice non utilizzato per evitare confusione e rendere il codice più leggibile.
3. Numeri magici: il codice utilizza valori codificati come "10" e "50" senza alcuna spiegazione o documentazione. Sarebbe meglio usare costanti o variabili con nome per rendere il codice più leggibile e gestibile.
4. Complessità: il codice ha più istruzioni "if" nidificate, che possono rendere difficile la comprensione e il debug. Potresti semplificare il codice consolidando alcune condizioni in un'unica istruzione "if" o utilizzando un'istruzione "switch".
5. Mancanza di gestione degli errori: il codice non gestisce gli errori se l'utente inserisce un valore non valido per la percentuale di sconto. Dovresti aggiungere la gestione degli errori per garantire che la funzione gestisca correttamente l'input imprevisto.

Ecco una versione aggiornata del codice che risolve questi problemi:
```javascript
function calcola_totale(prezzo, sconto) {
const DISCOUNT_PERCENTAGE = 0.1; // definisce una costante per la percentuale di sconto

if (sconto === undefinito || sconto < 0 || sconto > 100) {
lancia nuovo Errore('Valore sconto non valido');
}

const totale = prezzo * (1 - (PERCENTUALE_SCONTO * sconto));

restituisce il totale;
}
```

Knowway.org utilizza i cookie per offrirti un servizio migliore. Utilizzando Knowway.org, accetti il nostro utilizzo dei cookie. Per informazioni dettagliate, puoi consultare il testo della nostra Cookie Policy. close-policy