首页  >  文章  >  web前端  >  JavaScript趣题:Jaden Smith

JavaScript趣题:Jaden Smith

黄舟
黄舟原创
2017-02-04 15:46:311060浏览

Jaden Smith,Will Smith之子,是一位影视明星。

2010年主演了《功夫梦》,2013年主演了《重返地球》。

他最让人感兴趣的除了电影,还有他的Twitter,习惯在写Twitter的时候,大写每一个单词的首字母。

你的任务是将字符串转换成Jaden Smith式风格的,这些字符串确实是引用他的话,但没有每个单词首字母大写。

例如:

Not Jaden-Cased: "How can mirrors be real if our eyes aren't real"  
Jaden-Cased:     "How Can Mirrors Be Real If Our Eyes Aren't Real"

好,既然想要单词首字母大写,咋们就先扩展一个这样的方法:

if(typeof String.prototype.capitalizeFirst === "undefined"){  
    String.prototype.capitalizeFirst = function(){  
        return this.slice(0,1).toUpperCase() + this.slice(1);  
    };  
}

有了这个方法,再看具体的思路。

1.先将字符串按空格分割,打散成数组。

2.对数组每一个元素,也就是单词,调用我们刚刚编写的首字母大写方法。

3.将数组重新聚合成字符串,返回。

在这里,我使用了ES5的map方法,它刚好能做到上面的第二点。

String.prototype.toJadenCase = function () {  
    return this.split(" ").map(function(e){  
        return e.capitalizeFirst();  
    }).join(" ");  
};

以上就是 JavaScript趣题:Jaden Smith的内容,更多相关内容请关注PHP中文网(www.php.cn)!


声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn