在js中以行分隔为ucwords

时间:2011-06-24 23:26:39

标签: javascript

有人知道如何在javascript()中将 name1-name2-name3 转换为 name1Name2Name3 ? (寻找优雅的解决方案)

由于

2 个答案:

答案 0 :(得分:3)

确定。改变了我的回答,因为我现在明白了你的要求。如果jQuery是一个选项(仅适用于map函数oyu可以做:

var string2 = $.map(
        string1.split('-'),
        function(str) {
            return str.charAt(0).toUpperCase() + str.slice(1);
        })
    .join('');

你可以在这里看到一个工作小提琴:http://jsfiddle.net/EU6Aa/1/

如果jQuery不是一个选项,你可以找到一个简单的数组映射实现here

答案 1 :(得分:1)

这是一个正则表达式解决方案,以防您(或其他任何人)更喜欢:

var str = 'name1-name2-name3';
var str2 = str.replace(/\-(.)/g, function (m, l) {
    return l.toUpperCase(); 
});