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

Laske kokonaissumma alennuksella JavaScriptissä

Antamassasi koodissa on muutamia ongelmia, joita voidaan pitää "sopimattomana" tai epäoptimaalisena:

1. Return-lause puuttuu: Funktio `calculate_total() ei palauta mitään, mikä tarkoittaa, että se palauttaa oletuksena `undefined'. Sinun tulisi lisätä `return`-lause funktion loppuun määrittääksesi, minkä arvon se palauttaa.
2. Käyttämättömät muuttujat: Muuttujalle "alennus" on määritetty arvo, mutta sitä ei koskaan käytetä. Sinun tulee poistaa käyttämätön koodi välttääksesi sekaannukset ja tehdäksesi koodista luettavamman.
3. Maagiset numerot: Koodi käyttää kovakoodattuja arvoja, kuten "10" ja "50" ilman selityksiä tai asiakirjoja. Olisi parempi käyttää nimettyjä vakioita tai muuttujia, jotta koodista tulee helpommin luettava ja ylläpidettävä.
4. Monimutkaisuus: Koodissa on useita sisäkkäisiä if-lauseita, mikä voi vaikeuttaa sen ymmärtämistä ja virheenkorjausta. Voit yksinkertaistaa koodia yhdistämällä joitakin ehtoja yhdeksi "if"-lauseeksi tai käyttämällä "switch"-lausetta.
5. Virheenkäsittelyn puute: Koodi ei käsittele virheitä, jos käyttäjä syöttää alennusprosentille virheellisen arvon. Sinun tulee lisätä virheiden käsittely varmistaaksesi, että funktio käsittelee odottamattomia syötteitä sulavasti.

Tässä on päivitetty versio koodista, joka korjaa nämä ongelmat:
```javascript
function laskea_total(hinta, alennus) {
const DISCOUNT_PERCENTAGE = 0,1; // määritä alennusprosentille vakio

if (alennus === määrittelemätön || alennus < 0 || alennus > 100) {
throw new Error('Virheellinen alennusarvo');
}

const yhteensä = hinta * (1 - (DISCOUNT_PERCENTAGE * alennus));

palautus yhteensä;
}
```

Knowway.org käyttää evästeitä tarjotakseen sinulle paremman palvelun. Käyttämällä Knowway.orgia hyväksyt evästeiden käytön. Tarkempia tietoja saat tutustumalla evästekäytäntöömme. close-policy