>> phrase = "je ne peux venir qu'à 0h15"
>> function retourne(ph) {
var mots = ph.toUpperCase().split(" ") // Mots en majuscules
var final = [] // On ajoutera les mots retournés dans final
for (mot of mots) { // On parcourt les mots
var lettres = mot.split(""); // Transformation d'un mot en une liste de lettres
var inverse = lettres.reverse(); // Inversion de la liste
final.push(inverse.join("")) // Ajout dans final de la concaténation des lettres inversées
}
return final.join(" ") // On retourne la concaténation des mots inversés en les séparant par des espaces
}
>> retourne(phrase)
"EJ EN XUEP RINEV À'UQ 51H0"
>> var retourne = ph => ph.toUpperCase()
.split(" ") // On sépare en mot
.map(mot => [...mot] // Chaque mot est converti en liste de lettres
.reverse() // On inverse la liste
.join("") // On joint les lettres
).join(" ") // On rassemble les mots avec des espaces
retourne(phrase)
>> phrase = "ils debarquent demain !"
>> function miroir(ph) {
var lettres = ph.toUpperCase().split("")
var final = ""
for (c of lettres) {
if ("A" <= c && c <= "Z")
final += String.fromCharCode(155 - c.charCodeAt(0)) // Voir le corrigé Python pour l'invariant 155
else
final += c
}
return final
}
>> miroir(phrase)
"ROH WVYZIJFVMG WVNZRM !"
var miroir = ph => [...ph.toUpperCase()] // Lettres en majuscules
.map(c => // Pour chaque lettre
"A" <= c && c <= "Z" ? // Est-elle dans l'alphabet ?
String.fromCharCode(155 - c.charCodeAt(0)) // Si oui miroir
: c // sinon on la laisse
)
.join("") // On joint toutes les lettres
miroir(phrase)
Sans les commentaires :
var miroir = ph => [...ph.toUpperCase()].map(c => "A" <= c && c <= "Z" ? String.fromCharCode(155 - c.charCodeAt(0)) : c).join("")
>> var snowden = tel => [...tel].map(n => "5987604321"[n]).join("") // Voir la vidéo pour l'explication
>> snowden("1618033988")
"9492577122"