解决思路

  1. 将字符串转换成小写
  2. 把字符串分割成字符串数组
  3. 循环数组将每一个单词首字母大写
  4. 把数组所有的元素转换成一个字符串

第一种方法

function titleCase(str) {
str=str.toLowerCase().split(' ');//将字符串统一转换小写,即将所有单词小写
var change;//声明一个变量用于存放str中任意一个的元素
for(var i=0;i<str.length;i++){//按顺序循环str中的元素
change=str[i].split('');//将str第i+1个元素的字符串分割成字符串数组,即将单词分为单词长度的数组
change[0]=change[0].toUpperCase();//将字符串数组中的第一个元素的字符串大写,即将首字母大写
change=change.join('');//将单词长度的数组组合成单词
str[i]=change;//将首字母大写的单词替换原来的单词
}
str=str.join(' ');//组合str数组变成字符串
return str;//输出数组
}

titleCase("I'm a little tea pot");

第二种方法

function titleCase(str) {
str=str.split(' ');//将字符串分割成字符串数组
var change;//声明一个变量用于存放str中任意一个的元素
for(var i=0;i<str.length;i++){//按顺序循环str中的元素
change=str[i].toLowerCase();//将str中的第i+1个元素转化成小写,并赋值给change
change=change.split('');//将字符串转化成分割成字符串数组,即将单词分为单词长度的数组
change[0]=change[0].toUpperCase();//将字符串数组中的第一个元素的字符串大写,即将首字母大写
change=change.join('');//将单词长度的数组组合成单词
str[i]=change;//将首字母大写的单词替换原来的单词
}
str=str.join(' ');//组合str数组变成字符串
return str;//输出数组
}

titleCase("I'm a little tea pot");

错误示例//基于第二种方法上的错误

function titleCase(str) {
str=str.split(' ');
var change;
for(var i=0;i<str.length;i++){
change=str[i].toLowerCase();//将str中的第i+1个元素转化成小写,并赋值给change
change=str[i].split('');//这里将并未转换成小写的str中的第i+1个元素分割成字符串数组,重新给change赋值,造成了错误
change[0]=change[0].toUpperCase();
change=change.join('');
str[i]=change;
}
str=str.join(' ');
return str;
}

titleCase("I'm a little tea pot");

Title Case a Sentence的更多相关文章

  1. freeCodeCamp:Title Case a Sentence

    确保字符串的每个单词首字母都大写,其余部分小写. 像'the'和'of'这样的连接符同理. /*思路 将字符串转为小写.toLowerCase() 分割字符串以单词形式组成数组myarr 确保数组中的 ...

  2. FreeCodeCamp:Title Case a Sentence

    要求: 确保字符串的每个单词首字母都大写,其余部分小写. 像'the'和'of'这样的连接符同理. 结果: titleCase("I'm a little tea pot") 应该 ...

  3. FCC JS基础算法题(4):Title Case a Sentence(句中单词首字母大写)

    题目描述: 确保字符串的每个单词首字母都大写,其余部分小写.像'the'和'of'这样的连接符同理. 算法: function titleCase(str) { // 转小写及分割成数组 var st ...

  4. Title Case a Sentence-freecodecamp算法题目

    Title Case a Sentence(中单词首字母大写) 要求 确保字符串的每个单词首字母都大写,其余部分小写. 像'the'和'of'这样的连接符同理. 思路 将句子小写化后用.split(& ...

  5. Title Case

    地址:http://www.codewars.com/kata/5202ef17a402dd033c000009/train/python 题目: A string is considered to ...

  6. FreeCodeCamp 前端初级算法(个人向)

    freecodecamp 初级算法地址戳这里 Reverse a String 翻转字符串 function reverseString(str) { str=str.split("&quo ...

  7. js中字符和数组一些基本算法题

    最近在刷 fcc的题,跟升级打怪一样,一关一关的过,还挺吸引我的.今天抽时间把 Basic Algorithm Scritping  这部分题做了,根据一些提示,还是比较简单的.有些题的处理方式 方法 ...

  8. FreeCodeCamp 的 Basic Algorithm Scripting 题解(1)

    这是本人的原创文章,转载请注明原文链接http://www.cnblogs.com/wusuowiaaa1blog/p/5932121.html. 1.Reverse a String 翻转字符串 先 ...

  9. FreeCodeCamp初级算法部分学习

    Reverse a String 翻转字符串 先把字符串转化成数组,再借助数组的reverse方法翻转数组顺序,最后把数组转化成字符串. 你的结果必须得是一个字符串 当你完成不了挑战的时候,记得开大招 ...

随机推荐

  1. SQL Server服务器上需要导入Excel数据的必要条件

    SQL Server服务器上需要导入Excel数据,必须安装2007 Office system 驱动程序:数据连接组件,或者Access2010的数据库引擎可再发行程序包,这样就不必在服务器上装Ex ...

  2. webservice发布服务:AXIS2及客户端调用

    1.Axis2: 到官网下载axis2的压缩包. 解压后: 1.将lib文件下的jar包复制到项目中 2.在web-inf下创建services->META-INF->services.x ...

  3. Markdown 文档格式编写语法

    http://www.cnblogs.com/cxf520/p/6179294.html

  4. 将Linux下的Android签名对pk8和pem转换为Eclipse下的签名(keystore)

    一 在github上下载工具 https://github.com/getfatday/keytool-importkeypair 二 将工具在Linux环境下解压或者解压后Copy到Linux下,运 ...

  5. UC浏览器 分享到朋友圈和微信好友 分类: JavaScript 2015-04-28 14:45 615人阅读 评论(1) 收藏

    用手机UC浏览器访问新浪微博,会注意到有这样的两个分享按钮: 在手机端浏览器里,点击分享按钮,就可以启动微信客户端并分享到微信.研究了下其源代码,存在这样的一个js:http://mjs.sinaim ...

  6. PAT A 1022. Digital Library (30)【结构体排序检索】

    https://www.patest.cn/contests/pat-a-practise/1022 直接模拟, 输入,按id排序,检索 #include <iostream> #incl ...

  7. [C++][数据结构]队列(queue)的实现

    对于队列的定义,前人之述备矣. 队列的实现方法与栈非常相似.我直接在我实现的那个栈的代码上加了一点东西,全局替换了一些标识符,就实现了这个队列. 我实现的是一个queue<value>容器 ...

  8. 关于SQLSERVER中用SQL语句查询的一些个人理解

    作为一个编程菜鸟说真的很难有什么见解,也就是写给一些刚学习编程的人,希望能给他们一些帮助吧! SQLSERVER作为刚开始入门学习的数据库,SQL语句也并不算太难!说白了也就是建库,建表,建约束,对数 ...

  9. H5中REM中使用的规则

    /*REM单位换算方法 iphone6适配*/ function resizeRoot(){ var Dpr = 1, uAgent = window.navigator.userAgent; var ...

  10. js 一些容易错的点

    最近在做平台相关功能,需要和js.html.以及使用bootstrap,bootstrap元素大小的设置 是比较难的. js比较容易出错的是,解析json,对象最好是使用json,这样更好解析,arr ...