欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  web前端

翻转单词顺序的简单方法

程序员文章站 2022-04-11 11:04:43
...


将I am boy输出为boy am I

首先将I am boy转为yob ma I,str[0]与str[len-1]交换顺序,空间复杂度为O(1)。然后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)注意需将字符串转为字符数组,因为数组为引用类型,相互交换可以更改原始值,而字符串不行。比如:

var str = "boy";str[0].=str[2];
console.log(str);

(2)问题:引入了新数组newArr

以上就是翻转单词顺序的简单方法的详细内容,更多请关注其它相关文章!