您的位置:首页 > Web前端 > JavaScript

驼峰命名法camelCase和连字符Hyphenate 相互转换

2016-09-11 23:39 351 查看
// 正则方法
function test(str){
var o = /-(\w)/g;
return	str.replace(o,function(a,b){
// b为子项;
return b.toUpperCase()
})
}
//字符串方法
function test2(str){
var arr =  str.split("-");
//[border,left,top]
for(var i = 1,len=arr.length;i<len;i++){
arr[i] = arr[i].charAt(0).toUpperCase() +arr[i].substring(1)
}
return arr.join('')
}
var a = "border-left-top";
// alert(test(a))
alert(test2(a))

  /**

   * Hyphenate a camelCase string.

   *

   * @param {String} str

   * @return {String}

   */

转驼峰命名 --参考Vue源码

  function hyphenate(str) {

  var hyphenateRE = /([a-z\d])([A-Z])/g;

    return str.replace(hyphenateRE, '$1-$2').toLowerCase();

  }

$1匹配第一个()匹配项,$2匹配第二个()

...关于正则表达式,网上资料一大片,但是很难真正看得下去。推荐一本书:正则表达式必知必会。佷薄的一本书,140页左右。上班时间在地铁上看一周也能看完。由浅入深一步步的吧正则介绍透彻。

下面还有两种(其实是一种)

var a = 'footerBall';

a.replace(/([A-Z])/g,"-$1").toLowerCase();

or

a.replacee(/([A-Z])/g,function(m){

return "-"+m.toLowerCase();

})
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  javascript 函数 正则