Convertissez d'abord Je suis un garçon en yob ma I, échangez str[0] avec la commande str[len-1], la complexité spatiale est O(1). Appliquez ensuite la même méthode pour retourner chaque mot dans yob ma I.
function reverse(str) { var strArr = str.split(""); var len= Math.floor(str.length/2),strLen = str.length-1; for(var i=0;i<len;i++){ var temp = strArr[i]; strArr[i] = strArr[strLen - i]; strArr[strLen - i] = temp; } return strArr.join(""); }function reverseWord(str) { str = reverse(str); var strArr = str.split(" "); var newArr = strArr.map(function (item) { return reverse(item); }); return newArr.join(" "); } console.log(reverseWord("I am boy"));
(1) Notez que la chaîne doit être convertie en un tableau de caractères, car le tableau est un type de référence, et les échanges entre eux peuvent modifier la valeur d'origine, mais pas les chaînes. Par exemple :
var str = "boy";str[0].=str[2]; console.log(str);
(2) Question : Un nouveau tableau newArr
est introduitCe qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!