CNode

怎么实现对象属性名下划线转驼峰的通用方法?

问答
Ggyj1278发布于8 年前最后回复8 年前4 回复6475 浏览0 收藏

只转对象的自有属性。

查看回复

回复 (4)

G
gyj1278#1·8 年前
引用 Shasharoman如果考虑第三方库,lodash有个方法就是干这事的, .camelCase('a bc df') = 'aBcDf'

@Shasharoman 这个我知道,但是一个对象呢,限定对象中有两种属性,字符串类型,或数组类型,数组中可以包对象。

S
Shasharoman#2·8 年前

如果考虑第三方库,lodash有个方法就是干这事的,_.camelCase('a_bc_df') => 'aBcDf'

S
Shasharoman#3·8 年前
function camelCaseKey(o) {
	if (_.isAarray(o)) {
		return _.map(o, camelCaseKey);
	}

	return _.mapKeys(o, (value, key) => _.camelCase(key));
}

如果要深层转换,那就改写成递归

G
gyj1278#4·8 年前
引用 Shasharoman如果要深层转换,那就改写成递归

@Shasharoman 有深层的情况存在的。

参与回复
登录后即可参与回复。登录