ordinauxEnLettres(switch)
avec un switch
by toubia95
JavaScript
var ordinauxEnLettres = function(str, genre) {
var result;
var prem = (genre) ? "première": "premier"; // genre
switch (str.slice(-1)) { // dernier caractère
case "o":
case "t":
case "x":
result = str + "ième";
break;
case "q":
result = str + "uième";
break;
case "f":
result = str.slice(0, str.length - 1) + "vième";
break;
case "e":
result = str.slice(0, str.length - 1) + "ième";
break;
case "s":
result = (str.slice(-2) == "ts") ? str.slice(0, str.length - 1) + "ième": str + "ième";
break;
case "n":
result = (str.slice(-5) == "et-un" || str.slice(-5) == "et un") ? str + "ième" : prem;
break;
default:
result = str;
}
return result;
};
console.clear();
console.log(ordinauxEnLettres("deux"));
console.log(ordinauxEnLettres("trois"));
console.log(ordinauxEnLettres("six"));
console.log(ordinauxEnLettres("zéro"));
console.log(ordinauxEnLettres("huit"));
console.log(ordinauxEnLettres("quatre"));
console.log(ordinauxEnLettres("cinq"));
console.log(ordinauxEnLettres("neuf"));
console.log(ordinauxEnLettres("deux-cents"));
console.log(ordinauxEnLettres("un"));
console.log(ordinauxEnLettres("Un"));
console.log(ordinauxEnLettres("un", 1));
console.log(ordinauxEnLettres("cinquante et un"));
console.log(ordinauxEnLettres("soixante-et-un"));