您的位置:首页 > Web前端 > JavaScript

js基础算法之 字符串首字母全大写Title Case a Sentence

2016-11-20 20:47 597 查看

本测验来自freeCodeCamp

测试提示

确保字符串的每个单词首字母都大写,其余部分小写。

像’the’和’of’这样的连接符同理。

当你完成不了挑战的时候,记得开大招’Read-Search-Ask’。

这是一些对你有帮助的资源:

String.split()

测试要求

titleCase(“I’m a little tea pot”) 应该返回一个字符串

titleCase(“I’m a little tea pot”) 应该返回 “I’m A Little Tea Pot”.

titleCase(“sHoRt AnD sToUt”) 应该返回 “Short And Stout”.

titleCase(“HERE IS MY HANDLE HERE IS MY SPOUT”) 应该返回 “Here Is My Handle Here Is My Spout”.

思路分析

1.将字符串句子全部小写,并且用split()方法拆分成数组

var a = str.toLowerCase().split(' ')


2.循环数组,找到每个元素的首字母,并用replace()方法替换成大写

function titleCase(str){
var a = str.toLOwerCase().split(' ');
for(var i = 0;i < a.length;i++){
var char = a[i].charAt(0);     //找到首字母
a[i] = a[i].replace(char,function(char){
return char.toUpperCase();
})
}
return a.join(' ');
}


titleCase(“I’m a little tea pot”);

“I’m A Little Tea Pot”

或者不用for循环,直接用数组的map()方法简化一下

function titleCase(str){
var a = str.toLowerCase().split(' ');
var b = a.map(function(val){return val.replace(val.charAt(0),val.charAt(0).toUpperCase())})
}
return b.join(' ');
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  算法 javascript