问题描述:

有这样一个对象

let params = {
  id: 123,
  name: 'WiseWrong',
  e_mail: '123@qq.com',
tell: '12345678', }

由于种种原因,需要将其中的字段名  e_mail 修改为 eMail

 

分析原因:

处理的方案有很多,比如用 for-in 语句遍历,或者 delete 之后再新增字段,但这两种方案都有问题

首先 for-in 遍历效率太低,直接忽略。使用 delete 处理基础类型很有效,但字段的顺序会变,而且对于引用类型还需要额外处理

最终我采用了 JSON + replace 的方式

 

解决方案:

let paramsJson = JSON.stringify(params);
paramsJson = paramsJson.replace(/e_mail/, 'eMail');
params = JSON.parse(paramsJson);

有朋友提到 key 和 value 相同的情况,这种情况只要把 key 写全就好了

paramsJson = paramsJson.replace(/"e_mail":/, '"eMail":');

 

相关文章:

  • 2021-10-10
  • 2022-12-23
  • 2022-12-23
  • 2021-09-10
  • 2021-08-19
  • 2021-06-01
  • 2022-12-23
猜你喜欢
  • 2021-06-18
  • 2021-11-17
  • 2021-08-05
  • 2022-12-23
  • 2022-12-23
  • 2021-12-17
相关资源
相似解决方案