js 替换json对象中的键名
js 替换json对象中的键名
CreateTime--2018年3月30日15:38:50
Author:Marydon
情景描述:
有个json数组,现在需要将json对象中的key替换掉,值不变;
将count改为value,goods改为name
var data = [
{count:335, goods:'直接访问'},
{count:310, goods:'邮件营销'},
{count:234, goods:'联盟广告'}
];
方法一:通过map()实现
// 方法一
var data = [
{count:335, goods:'直接访问'},
{count:310, goods:'邮件营销'},
{count:234, goods:'联盟广告'}
].map(function(item) {
return {
name: item.goods,
value: item.count
}
});
方法二:
// 方法二
var JSONObject = {data:[
{count:335, goods:'直接访问'},
{count:310, goods:'邮件营销'},
{count:234, goods:'联盟广告'}
]};
// 取到data所对应的json数组
var JSONArray = JSONObject.data;
// 声明一个数组,用于存储多个json对象
var JSONArray2 = [];
// 声明一个json对象,用于临时存储json数据
var tempJson = {};
// 遍历数组
for (var i in JSONArray) {
// 清空json对象
tempJson = {};
// 添加json元素(key-goods)并赋值(value)
tempJson['name'] = JSONArray[i].goods;
// 设置key=value所对应的值并添加到tempJson对象中
tempJson['value'] = JSONArray[i].count; JSONArray2[i] = tempJson;
}
alert(JSONArray2[0].name);
// 改变JSONObject中key=data的值
JSONObject.data = JSONArray2;
相关推荐:
js 替换json对象中的键名的更多相关文章
- requests(二): json请求中固定键名顺序&消除键和值之间的空格
继上一篇requests发送json请求的文章后,实际工作中遇到了以下2种情况. 1:服务端要求json字符串,键名的顺序固定 2.服务端对于接收到的json数据中,若key和value之间有空格, ...
- js获取json对象中的key和value,并组成新数组
//比如有一个json var json = {"name" : "Tom", "age" : 18}; //想分别获取它的key 和 va ...
- Js 向json对象中添加新元素
即:var json={a:1,b:2} json.c=3 添加新元素直接使用赋值就行了
- js判断json对象中是否含有某个属性
obj.hasOwnProperty("key"); 原地址:https://blog.csdn.net/feicongcong/article/details/53463872
- jquery获取json对象中的key小技巧
jquery获取json对象中的key小技巧 比如有一个json var json = {"name" : "Tom", "age" : 1 ...
- 类对象传输到jsp页面。需要转换为js的json对象时,这么做。
场景:要从一个列表中选择信息,填写入父页面的表单中,但是字段非常多... 后台查询,得到结果,放在列表中. 效果:点击选择产品.. 弹出页面:点击后面的选择产品 选择产品后:信息自动填充.. 实现:点 ...
- php中的常用数组函数(五)(数组中获取键名集合)
array_keys($arr, $search_value, $strict); --数组中获取键名的集合. //参数1 要检索的数组:参数2 要检索的键值 默认NULL: 参数3 是否严格比较(= ...
- Js拼Json对象
我们通常会拼字符串,但是拼字符串的话,遇见占位符会出错. 下面分享一个拼js拼json对象的方法: var jsonArr = []; $ ...
- XE3随笔6:SuperObject 的 JSON 对象中还可以包含 "方法"
SuperObject 的 JSON 对象中还可以包含 "方法", 这太有意思了; 其方法的格式是: procedure Method(const This, Params: IS ...
随机推荐
- Eclipse下mallet使用的方法
Mallet是Umass大牛开发的一个关于统计自然语言处理的l的开源库,很好的一个东西.可以用来学topic model,训练ME模型等.对于开发者来说,其官网的技术文档是非常有效的. mallet下 ...
- bzoj 1008 组合计数
正难则反 前面定后面就定->枚举开头 /************************************************************** Problem: 1008 ...
- Codeforces Round #302 (Div. 2) D - Destroying Roads 图论,最短路
D - Destroying Roads Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/544 ...
- Hive伪分布式下安装
本安装过程只作为个人笔记用,非标准教程,请酌情COPY.:-D Hive下载 下载之前,需先查看兼容的Hadoop版本,并安装hadoop,参考 http://www.cnblogs.com/yong ...
- [转]MinGW编译wxWidgets问题
其实利用MinGW编译wxWidgets是一件挺简单的事情,但是最近在编译的时候遇到一些问题,并找到解决方案,因此在此分享一下个人经验.编译出错的原因是由于安装了MSYS的缘故. 错误信息类似于如 ...
- apache 与 iis共存
先装上了apache ,再装iis会出现错误.所以先关闭apache,再进行iis安装.iis安装完后修改iis80端口为8080端口, 同时使用命令 cd C:\Inetpub\AdminScrip ...
- C# 7.0中可能出现的语法
今天在MSDN上看到的微软关于微软关于C# 7.0特性的Work List,主要特性如下: Tuple增强 Tuple的可读性一直不是很好, 很多时候宁愿新写一个类也不使用Item1, Item2这种 ...
- WPF中的导航框架(一)——概述
有的时候,我们需要一个支持页面跳转的UI,例如文件浏览器,开始向导等.对于这样的界面,简单的可以使用ContentControl + ContentTemplateSelector的方式来实现,但是有 ...
- ida plug-in helloworld
#include <ida.hpp> #include <idp.hpp> #include <loader.hpp> #include <kernwin.h ...
- mysql 5.7源码安装
http://blog.itpub.net/29733787/viewspace-1590891/