在React开发中,我们或许经常遇到要将font-size:20px;
转换成对象类型{fontSize:"20px"}
,如下我自己写了个类,正则匹配-
后面的第一个字为大写字母,并且去掉-
,然后将:
后的属性转换为字符串类型,代码如下
function styleStrToObject(styleStr){
const obj = {};
const s = styleStr.toLowerCase().replace(/-(.)/g,function(m,g){
return g.toUpperCase();
}).replace(/;\s?$/g,"").split(/:|;/g)
for(var i=0;i<s.length;i+=2){
obj[s[i].replace(/\s/g,"")] = s[i+1].replace(/^s+|\s+$/g,"");
}
return obj
}
export default styleStrToObject
感谢大家观看,我们下次见