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

本文介绍了如何在JavaScript中将camelCase字符串转换为Hyphenate形式,参考了Vue源码实现。提供了使用正则表达式的两种转换方法,并推荐了《正则表达式必知必会》一书来深入理解正则。
// 正则方法
			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();

})

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值