Refaktoroi monimutkainen if-else selkeämmäksi.
Refaktoroi seuraava monimutkainen if-else-rakenne selkeämmäksi. Koodi: [KOODI] Vaihtoehtoiset lähestymistavat: - Object lookup / Map - Strategy pattern - Early return - Switch-case - Guard clauses Valitse sopivin lähestymistapa ja selitä miksi.
Korvaa nämä hakasulkeissa olevat muuttujat omilla tiedoillasi:
[KOODI]Refaktoroi seuraava monimutkainen if-else-rakenne.
Koodi:
function getDiscountedPrice(price, userType, membershipYears) {
let discount = 0;
if (userType === 'premium') {
if (membershipYears >= 5) {
discount = 0.25;
} else if (membershipYears >= 2) {
discount = 0.20;
} else {
discount = 0.15;
}
} else if (userType === 'standard') {
if (membershipYears >= 5) {
discount = 0.15;
} else if (membershipYears >= 2) {
discount = 0.10;
} else {
discount = 0.05;
}
} else if (userType === 'basic') {
discount = 0;
}
return price * (1 - discount);
}
Refaktoroi selkeämmäksi.Refaktoroitu koodi valitulla patternilla.
Selaa kaikkia refaktorointi prompteja tai tutustu muihin kategorioihin.