export function camelToSnake(camelStr) {
|
return camelStr.replace(/([a-z])([A-Z])/g, '$1_$2').toLowerCase()
|
}
|
|
export function camelToSnakeObj(obj) {
|
if (Array.isArray(obj)) {
|
return obj.map(item => camelToSnakeObj(item)) // 递归处理数组中的每个元素
|
}
|
if (typeof obj === 'object' && obj !== null) {
|
return Object.keys(obj).reduce((acc, key) => {
|
const snakeKey = camelToSnake(key)
|
acc[snakeKey] = camelToSnakeObj(obj[key]) // 递归处理对象中的每个属性值
|
return acc
|
}, {})
|
}
|
if (typeof obj === 'string') {
|
return camelToSnake(obj) // 处理单个字符串属性
|
}
|
return obj // 返回原始值(例如,数字、布尔值等)
|
}
|
|
export function snakeToCamel(snakeStr) {
|
return snakeStr.replace(/(_\w)/g, match => match[1].toUpperCase())
|
}
|
|
export function snakeToCamelObj(obj) {
|
if (Array.isArray(obj)) {
|
return obj.map(item => snakeToCamelObj(item)) // 递归处理数组中的每个元素
|
}
|
if (typeof obj === 'object' && obj !== null) {
|
return Object.keys(obj).reduce((acc, key) => {
|
const camelKey = snakeToCamel(key)
|
acc[camelKey] = snakeToCamelObj(obj[key]) // 递归处理对象中的每个属性值
|
return acc
|
}, {})
|
}
|
if (typeof obj === 'string') {
|
return snakeToCamel(obj) // 处理单个字符串属性
|
}
|
return obj // 返回原始值(例如,数字、布尔值等)
|
}
|