实现将对象下所有key由驼峰/Pascal转成下划线分割:
toSnakeCase({
UserName: 'toutiao',
group: {
GroupName: 'douyin'
}
}) => {
user_name: 'toutiao',
group: {
group_name: 'douyin'
}
};
stringObject.replace(regexp/substr,replacement)
参数描述
regexp/substr
必需。规定子字符串或要替换的模式的 RegExp 对象。
请注意,如果该值是一个字符串,则将它作为要检索的直接量文本模式,而不是首先被转换为 RegExp 对象。
replacement
必需。一个字符串值。规定了替换文本或生成替换文本的函数。
eplacement 可以是字符串,也可以是函数。如果它是字符串,那么每个匹配都将由字符串替换。但是 replacement 中的 $ 字符具有特定的含义。如下表所示,它说明从模式匹配得到的字符串将用于替换。
字符替换文本
$1、$2、...、$99
与 regexp 中的第 1 到第 99 个子表达式相匹配的文本。
$&
与 regexp 相匹配的子串。
$`
位于匹配子串左侧的文本。
$'
位于匹配子串右侧的文本。
$$
直接量符号。
解决方法:
//方法
objectHumpToLine(obj) {
var newObj = new Object()
for (let key in obj) {
newObj[key.replace(/([A-Z])/g, "_$1").toLowerCase()] = obj[key]
}
return newObj
}
来源:https://www.cnblogs.com/keyng/p/13365272.html