某些场景下,我们拿到的键名与预期的键名不符,这个时候就需要替换键名来得到我们想要的内容

let obj = [
{
id:1,
title:'zs'
},
{
id:2,
title:'ls'
}
]; // 但是我们实际想要的效果是: {id:1,name:'zs'}
// 此时可以把对象转为string 然后使用字符串方法替换
console.log(JSON.stringify(obj ).replace('title','name'))

输出结果:




第一个对象的键名已经更改了,但是你会发现,只更改了一个对象的键名,如果想要批量更改对象键名的需要使用 / /g 语法

console.log(JSON.stringify(obj).replace(/title/g,'name'))

输出结果:


转换完后使用JSON.parse转换成对象即可

完整语法:

console.log(JSON.parse(JSON.stringify(obj).replace(/title/g,'name')))


ES6提供的新语法replaceAll

replaceAll可以直接匹配并替换所有符合条件的字符串

console.log(JSON.parse(JSON.stringify(obj).replaceAll('title','name')))

js实现替换对象(json)格式的键名的更多相关文章

  1. (转)解决fasterxml中string字符串转对象json格式错误问题(无引号 单引号问题)

    原文地址:解决fasterxml中string字符串转对象json格式错误问题 com.fasterxml.jackson.databind.ObjectMapper mapper = new com ...

  2. js实现字符串转JSON格式

    在浏览器前端实现字符串转JSON格式,有多种方法,总结如下: 方法1. js函数,eval() 语法: var obj = eval ("(" + txt + ")&qu ...

  3. 解决fasterxml中string字符串转对象json格式错误问题

    软件152 尹以操 springboot中jackson使用的包是fasterxml的.可以通过如下代码,将一个形如json格式string转为一个java对象: com.fasterxml.jack ...

  4. js中替换返回json中的空格为 

    使用.replace(/\s/g, ' ');来替换空格.在IE中 不起作用,可以指定编码将字体设置为:{font-family: Simsun;}

  5. js格式化时间为JSON格式 ajax提交 后台处理

    var effectRow = new Object();if ($('#grd_infos').datagrid('getChanges').length) {    var update = $( ...

  6. js判断字符串是否json格式

    function isJSON(str) { if (typeof str == 'string') { try { var obj=JSON.parse(str); if(typeof obj == ...

  7. (转载)JSON对象使用变量作为键名

    转载链接:https://blog.csdn.net/lihefei_coder/article/details/82499520 //第一种方式 var key = 'name'; var json ...

  8. 数组对象用map修改键名

    用vue组件需要使用的数据格式和后台返回的不一样 console.log(res); this.optionsEp = res.map(item => { return { value: ite ...

  9. JSON(二)——JavaScript中js对象与JSON格式字符串的相互转换

    首先我们来看一下js中JSON格式的字符串 var JSONStr1 = "{\"name\" : \"张三\"}"; 注意以下的写法不是j ...

  10. JavaScript中,JSON格式的字符串与JSON格式的对象相互转化

    前言:JSON是一个独立于任何语言的数据格式,因此,严格来说,没有“JSON对象”和“JSON字符串”这个说法(然而”菜鸟教程“和”W3school“使用了“JSON对象”和“JSON字符串”这个说法 ...

随机推荐

  1. 随笔——写windows服务的时候如何调试 c# .net

    流程 1.更改项目 应用程序--输出类型--windows应用程序 改为 控制台应用程序 2.Program启动类中添加调用代码 3.服务类里面添加启动方法去启动OnStart和 Console.Re ...

  2. mysql 多个结构不同表查询 返回相同字段名

    ( select ID,数据库原字段名1 AS 统一字段名1,数据库原字段名2 AS 统一字段名2 from 第一个表名 WHERE 1) UNION(联合表查询)( select ID,数据库原字段 ...

  3. 数电第一周总结_by_yc

    数电第一周总结 重点:Verilog建模方式 结构级建模: 需基于电路原理图 module mux( input data0, input data1, input sel, output out); ...

  4. Kafka教程(三):原理及存储

    一.思维导图 1.实时更新连接 https://www.mubucm.com/doc/1GRE2U7qYuj 2.思维导图图片 二.具体内容   8.系统架构   架构推导   拓扑结构   多对多 ...

  5. ChatGPT杀疯了,这人工智能也太离谱了吧

    转载请注明出处️ 作者:测试蔡坨坨 原文链接:caituotuo.top/2ac8440d.html 你好,我是测试蔡坨坨. 这几天被ChatGPT刷屏,各大网站平台都能看到关于它的文章和视频,上线短 ...

  6. jmeter Foreach 控制器与json提取器/正则表达式

    适用场景:对某些业务数据依次操作 如:删除某个用户下的所有人员数据,无批量删除接口时,只能循环调用删除人员接口,直到删除完成 返回数据格式: 1.  使用json提取器或正则表达式提取业务数据(jso ...

  7. uniapp(vue)实现点击左侧菜单,右侧显示对应的内容

    <template> <view class="container"> <view class="fication-search" ...

  8. Redis网络模型究竟有多强

    如果面试官问我:Redis为什么这么快? 我肯定会说:因为Redis是内存数据库!如果不是直接把数据放在内存里,甭管怎么优化数据结构.设计怎样的网络I/O模型,都不可能达到如今这般的执行效率. 但是这 ...

  9. ORM执行原生SQL语句、双下划线数据查询、ORM外键字段的创建、外键字段的相关操作、ORM跨表查询、基于对象的跨表查询、基于双下划线的跨表查询、进阶查询操作

    今日内容 ORM执行SQL语句 有时候ROM的操作效率可能偏低 我们是可以自己编写sql的 方式1: models.User.objects.raw('select * from app01_user ...

  10. Jest如何有序地执行测试

    项目场景: node环境下编写js库,处于规范性考虑,需要做单元测试,我选择了Jest 问题描述 我的js库需要访问数据库,因此操作都是异步的,而且各个测试单元有严格的先后执行顺序(比如,建表 > ...