FCC算法:五、Title Case a Sentence--句中单词首字母大写

来源:互联网 发布:华为软件开发工资待遇 编辑:程序博客网 时间:2024/06/05 02:30

要求:

句中单词首字母大写
确保字符串的每个单词首字母都大写,其余部分小写。
像’the’和’of’这样的连接符同理。


function titleCase(str) {  var str1=str.split(" ");//拆分字符串为数组  var str2;   var newstr;  for(var i=0; i < str1.length;i++){   str2=str1[i].split("");  //循环数组str1单词,拆分至数组str2单字符   str2[0] = str2[0].toUpperCase(); //数组str2单字符首字符大写   for(var j=1;j < str2.length;j++){       str2[j] = str2[j].toLowerCase();        }    //数组str2单字符其余字符小写    str1[i] = str2.join("");     //单字符数组合并为单词;  }  newstr = str1.join(" ");  //单词数组合并为字符串;  return newstr;}titleCase("I'm a little tea pot");

当然,网络的发达,网友的强大~又学别人的写法:

function titleCase(str) {  var newstr=str.toLowerCase().split(" ").map(function(item){    //一、toLowerCase()全部转化为小写;     //二、split()拆分字符串为数组;     //三、map()方法返回一个新数组;    return item[0].toString().toUpperCase()+item.slice(1);    //获取数组的第一个字母,转化为大写    //然后加上后面的小写内容(slice()方法获取范围内容,1表示从第二个字母开始)  }).join(" ");   //join()方法组合成字符串  return newstr;}titleCase("I'm a little tea pot");
原创粉丝点击