跳到主要内容
CNode

如何转换json中的字段名

问答
Lldd911127发布于 10 年前最后回复 10 年前
1155810

let test = [ {id: 'testId', text: 'testText'}, {id: 'testId1', text: 'testText1'}, {id: 'testId2', text: 'testText2'} ]

let test_new = [ {id_new: 'testId', text_new: 'testText'}, {id_new: 'testId1', text_new: 'testText1'}, {id_new: 'testId2', text_new: 'testText2'} ]

请教下如何快捷的将test字段转换成test_new 中的字段呢、现在用的比较笨的办法,用一个中间变量,forEach循环赋值,有没有是比较好的方法或者第三方插件支持呢

查看回复

回复 (11)

W
welchwsy#1110 年前

6L ++

J
jizhuofeng#1010 年前

这只是一个思路, 如果你的数据能保证正则替换后的正确性,这种方式也是可以使用的。 要不然就只能暴力了!

A
alsotang#910 年前

3L 肯定是在开玩笑

Q
Qquanwei#810 年前

@DevinXian 确实,如果确定值里不会出现 ":" 字符就没太大问题

D
DevinXian#710 年前
引用 Qquanwei3L +1

@Qquanwei 这个不太推荐,如果有键值相同或者有重复片段,就挂了...

K
klesh#610 年前
var test2 = test.map(d => ({ id_new: d.id, text_new: d.text }))
Q
Qquanwei#510 年前

3L +1

Y
yanglinnie#410 年前

写成一个公用方法 然后需要的时候调用 不就可以了吗

J
jizhuofeng#310 年前

直接转换为string, 然后正则替换, 再转回来不就行了?

L
ldd911127#210 年前
引用 alsotang循环然后赋值就是最快的方式了。没那么多魔法。。。

@alsotang 主要是这样写代码量会比较多,好多接口都要循环转换一下,没有其他方法只有循环赋值了

A
alsotang#110 年前

循环然后赋值就是最快的方式了。没那么多魔法。。。

参与回复

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