返回顶部

收藏

JavaScript将首字母转成大写

更多
/* To Title Case 1.1.1
 * David Gouch <http://individed.com>
 * 23 May 2008
 * License: http://individed.com/code/to-title-case/license.txt
 *
 * In response to John Gruber's call for a Javascript version of his script: 
 * http://daringfireball.net/2008/05/title_case
 */

String.prototype.toTitleCase = function() {
    return this.replace(/([\w&amp;`'‘’"“.@:\/\{\(\[<>_]+-? *)/g, function(match, p1, index, title) {
        if (index > 0 &amp;&amp; title.charAt(index - 2) !== ":" &amp;&amp;
            match.search(/^(a(nd?|s|t)?|b(ut|y)|en|for|i[fn]|o[fnr]|t(he|o)|vs?\.?|via)[ \-]/i) > -1)
            return match.toLowerCase();
        if (title.substring(index - 1, index + 1).search(/['"_{(\[]/) > -1)
            return match.charAt(0) + match.charAt(1).toUpperCase() + match.substr(2);
        if (match.substr(1).search(/[A-Z]+|&amp;|[\w]+[._][\w]+/) > -1 || 
            title.substring(index - 1, index + 1).search(/[\])}]/) > -1)
            return match;
        return match.charAt(0).toUpperCase() + match.substr(1);
    });
};

标签:javascript

收藏

0人收藏

支持

0

反对

0

相关聚客文章
  1. Leon 发表 2018-03-28 14:10:00 本地使用js或jquery操作cookie在谷歌浏览器chrome中不生效
  2. 博主 发表 2017-11-05 11:42:25 原生 Javascript 编写五子棋
  3. 博主 发表 2017-11-01 15:24:51 原生 Javascript 编写俄罗斯方块
  4. 博主 发表 2017-09-28 01:50:55 jQuery 性能优化技巧
  5. 博主 发表 2017-11-05 11:42:39 原生 Javascript 编写贪吃蛇
  6. darida 发表 2018-03-25 14:51:31 文件预览 kkFileView v1.1 新增多媒体预览支持等
  7. Jiavan 发表 2016-03-05 12:06:00 ES中理解原型以及对象创建方式
  8. Jiavan 发表 2016-03-18 08:58:00 Javascript模块化编程及编写加载遵循AMD规范的代码
  9. Jiavan 发表 2016-03-24 12:11:00 JS事件分层及性能优化
  10. Jiavan 发表 2016-04-03 18:22:00 浅析JS中的自定义事件
  11. Jiavan 发表 2016-08-21 08:43:00 浅谈Flux架构及Redux实践
  12. Jiavan 发表 2016-08-26 03:26:00 Redux中间件与异步Action

发表评论