字符串函数扩展

字符串首字母大写函数扩展

String.prototype.firstUpperCase= function () {
    return this.split(' ').map(function(value, index) {
    let arr = value.split('');
        let val = value[0].toUpperCase() + value.slice(1);
    return val;
}).join(' ');
};

字符串首字母大写,同时加入第二个参数,包含需要小写的条件。

例子:titleCase('a clash of KINGS', 'a an the of')   //return: 'A Clash of Kings'        首字母的首个单词一定要大写
      titleCase('THE WIND IN THE WILLOWS', 'The In') //return: 'The Wind in the Willows' 同上
      titleCase('the quick brown fox')               //return: 'The Quick Brown Fox'     同上    

方法一:
String.prototype.titleCase = function(minorWords) {
    let minor = minorWords === undefined ? [] : minorWords.toLowerCase().split(' ');
    return this.toLowerCase().split(' ').map(function(val, index) {
        if (val !== '' && (index === 0 || minor.indexOf(val) === -1)) {
            val = val[0].toUpperCase() + val.slice(1);
        }
        return val;
    }).join(' ');
}

方法二:
String.prototype.titleCase = function(minorWords) {
    let minor = minorWords === undefined ? '' : minorWords.toLowerCase();
    if (this === '') return '';
    return this.toLowerCase().split(' ').map(function(value, index) {
        return value[0].toUpperCase() + value.slice(1);
    }).map(function(val, index) {
        minor.split(' ').forEach(function(value) {
            if (val.toLowerCase() === value && index > 0) val = val.toLowerCase();
        })
        return val;
    }).join(' ');
}

转载于:https://www.cnblogs.com/unclekeith/p/6230918.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值