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;

相关推荐:

  javascript JSON

 

js 替换json对象中的键名的更多相关文章

  1. requests(二): json请求中固定键名顺序&消除键和值之间的空格

    继上一篇requests发送json请求的文章后,实际工作中遇到了以下2种情况. 1:服务端要求json字符串,键名的顺序固定  2.服务端对于接收到的json数据中,若key和value之间有空格, ...

  2. js获取json对象中的key和value,并组成新数组

    //比如有一个json var json = {"name" : "Tom", "age" : 18}; //想分别获取它的key 和 va ...

  3. Js 向json对象中添加新元素

    即:var json={a:1,b:2} json.c=3  添加新元素直接使用赋值就行了

  4. js判断json对象中是否含有某个属性

    obj.hasOwnProperty("key"); 原地址:https://blog.csdn.net/feicongcong/article/details/53463872

  5. jquery获取json对象中的key小技巧

    jquery获取json对象中的key小技巧 比如有一个json var json = {"name" : "Tom", "age" : 1 ...

  6. 类对象传输到jsp页面。需要转换为js的json对象时,这么做。

    场景:要从一个列表中选择信息,填写入父页面的表单中,但是字段非常多... 后台查询,得到结果,放在列表中. 效果:点击选择产品.. 弹出页面:点击后面的选择产品 选择产品后:信息自动填充.. 实现:点 ...

  7. php中的常用数组函数(五)(数组中获取键名集合)

    array_keys($arr, $search_value, $strict); --数组中获取键名的集合. //参数1 要检索的数组:参数2 要检索的键值 默认NULL: 参数3 是否严格比较(= ...

  8. Js拼Json对象

     我们通常会拼字符串,但是拼字符串的话,遇见占位符会出错.  下面分享一个拼js拼json对象的方法:          var jsonArr = [];                     $ ...

  9. XE3随笔6:SuperObject 的 JSON 对象中还可以包含 "方法"

    SuperObject 的 JSON 对象中还可以包含 "方法", 这太有意思了; 其方法的格式是: procedure Method(const This, Params: IS ...

随机推荐

  1. Eclipse下mallet使用的方法

    Mallet是Umass大牛开发的一个关于统计自然语言处理的l的开源库,很好的一个东西.可以用来学topic model,训练ME模型等.对于开发者来说,其官网的技术文档是非常有效的. mallet下 ...

  2. bzoj 1008 组合计数

    正难则反 前面定后面就定->枚举开头 /************************************************************** Problem: 1008 ...

  3. Codeforces Round #302 (Div. 2) D - Destroying Roads 图论,最短路

    D - Destroying Roads Time Limit: 20 Sec  Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/544 ...

  4. Hive伪分布式下安装

    本安装过程只作为个人笔记用,非标准教程,请酌情COPY.:-D Hive下载 下载之前,需先查看兼容的Hadoop版本,并安装hadoop,参考 http://www.cnblogs.com/yong ...

  5. [转]MinGW编译wxWidgets问题

    其实利用MinGW编译wxWidgets是一件挺简单的事情,但是最近在编译的时候遇到一些问题,并找到解决方案,因此在此分享一下个人经验.编译出错的原因是由于安装了MSYS的缘故.   错误信息类似于如 ...

  6. apache 与 iis共存

    先装上了apache ,再装iis会出现错误.所以先关闭apache,再进行iis安装.iis安装完后修改iis80端口为8080端口, 同时使用命令 cd C:\Inetpub\AdminScrip ...

  7. C# 7.0中可能出现的语法

    今天在MSDN上看到的微软关于微软关于C# 7.0特性的Work List,主要特性如下: Tuple增强 Tuple的可读性一直不是很好, 很多时候宁愿新写一个类也不使用Item1, Item2这种 ...

  8. WPF中的导航框架(一)——概述

    有的时候,我们需要一个支持页面跳转的UI,例如文件浏览器,开始向导等.对于这样的界面,简单的可以使用ContentControl + ContentTemplateSelector的方式来实现,但是有 ...

  9. ida plug-in helloworld

    #include <ida.hpp> #include <idp.hpp> #include <loader.hpp> #include <kernwin.h ...

  10. mysql 5.7源码安装

    http://blog.itpub.net/29733787/viewspace-1590891/