JavaScript RegExp to CamelCase 一个带连字符的 CSS 属性 [英] JavaScript RegExp to CamelCase a hyphened CSS property

查看:43
本文介绍了JavaScript RegExp to CamelCase 一个带连字符的 CSS 属性的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试像这样更改 CSS 属性.

I am trying to change CSS properties like this one.

-moz-border-radius

像这样的 JavaScript CSS 属性.

To the JavaScript CSS property like so.

MozBorderRadius

我正在使用这个 RegExp.

I am using this RegExp.

var exp = new RegExp('-([a-z])', 'gi');
console.log('-moz-border-radius'.replace(exp, '$1'));

我需要做的就是将 $1 转换为大写,这样它就可以将我的 CSS 属性转换为基于 JavaScript 的属性.这可能吗?

All I need to do is convert $1 to upper case so it can cammelcaseify (yes I made that word up...) my CSS property into a JavaScript based one. Is this possible?

谢谢.

推荐答案

你最好在 replace() 中使用函数作为第二个参数,你也可以使用正则表达式代替RegExp 构造函数:

You would be better off using a function as the second parameter in replace(), and you could also use a regex literal instead of the RegExp constructor:

var replaced = '-moz-border-radius'.replace(/-([a-z])/gi, function(s, group1) {
    return group1.toUpperCase();
});

这篇关于JavaScript RegExp to CamelCase 一个带连字符的 CSS 属性的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆