css 中经常有类似 background-image 这种通过 - 连接的字符,通过 javascript 设置样式的时候需要将这种样式转换成 backgroundImage 驼峰格式,请完成此转换功能
-
以 - 为分隔符,将第二个起的非空单词首字母转为大写
-
-webkit-border-image 转换后的结果为 webkitBorderImage
function cssStyle2DomStyle(sName) {
const reg = /-(.)/g;
return sName.replace(reg, (fullMatch, g1, index) => {
if (index === 0) return g1;
return g1.toUpperCase();
});
}
function cssStyle2DomStyle(sName) {
//split切割函数
var arr = sName.split('');
//判断第一个是不是 - ,是的话就删除、
if(arr.indexOf('-') ==0 ){
arr.splice(0,1);
}
//处理剩余的 -
for(var i = 0;i < arr.length; i++){
if(arr[i] == '-'){
arr.splice(i ,1);
arr[i] = arr[i].toUpperCase();
}
}
//根据某个字符将数组转成字符串
return arr.join('');
}
function cssStyle2DomStyle(sName) {
let s = sName
// 处理特殊情况 eg -www
if (s && s[0] === '-') s = s.substring(1);
return s.replace(/-(\w)/g, function(_, c,d,e){
return c ? c.toUpperCase() : ''
})
}
function cssStyle2DomStyle(sName) {
var arrs = sName.split('-').filter(item => item)
console.log(arrs);
var name = ''
for (const i in arrs) {
if (i == 0) {
name = name + arrs[0]
} else {
var nameArr = arrs[i].split('')
nameArr[0] = nameArr[0].toUpperCase()
name = name + nameArr.join('')
}
}
return name
}