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

Calculați totalul cu Reducerea în JavaScript

În codul pe care l-ați furnizat, există câteva probleme care ar putea fi considerate „improprii” sau suboptime:

1. Lipsește instrucțiunea `return`: funcția `calculate_total()` nu returnează nimic, ceea ce înseamnă că va returna `undefined` implicit. Ar trebui să adăugați o instrucțiune „return” la sfârșitul funcției pentru a specifica ce valoare returnează.
2. Variabile neutilizate: variabilei „reducere” i se atribuie o valoare, dar nu este utilizată niciodată. Ar trebui să eliminați codul neutilizat pentru a evita confuzia și pentru a face codul mai lizibil.
3. Numere magice: codul folosește valori codificate ca „10” și „50” fără nicio explicație sau documentație. Ar fi mai bine să folosiți constante sau variabile numite pentru a face codul mai lizibil și mai ușor de întreținut.
4. Complexitate: Codul are mai multe instrucțiuni „if” imbricate, ceea ce poate face dificil de înțeles și de depanat. Puteți simplifica codul consolidând unele dintre condiții într-o singură instrucțiune „if” sau folosind o instrucțiune „switch”.
5. Lipsa gestionării erorilor: codul nu gestionează erorile dacă utilizatorul introduce o valoare nevalidă pentru procentul de reducere. Ar trebui să adăugați gestionarea erorilor pentru a vă asigura că funcția gestionează intrările neașteptate cu grație.

Iată o versiune actualizată a codului care abordează aceste probleme:
```javascript
function calculate_total(preț, discount) {
const DISCOUNT_PERCENTAGE = 0,1; // definiți o constantă pentru procentajul de reducere

if (reducere === nedefinit || reducere < 0 || reducere > 100) {
throw new Error('Valoare discount nevalidă');
}

const total = preț * (1 - (DISCOUNT_PERCENTAGE * reducere));

returnare totală;
}
```

Knowway.org folosește cookie-uri pentru a vă oferi un serviciu mai bun. Folosind Knowway.org, sunteți de acord cu utilizarea cookie-urilor. Pentru informații detaliate, puteți consulta textul Politica privind cookie-urile. close-policy