JavaScript-如何以这种方式格式化此JSON
JavaScript - How to format this JSON this way?
我想知道如何格式化以下JSON:
{
"names":{
"Nancy":[
],
"Charles":[
]
}
}
至以下一个:
{
"names":{
0: Object
"Nancy":[
],
1: Object
"Charles":[
]
}
}
到目前为止,我的代码是:
for(var i=0; i < this.data.length; i++){
storeInfo[i] = this.data[i];
var row = storeInfo[i];
result.names[row.info] = result.names[row.info] || [];
result.names[row.info];
}
我愿意以这种方式检索数据names[i]
,这种方式我需要转换它。
我认为为了达到想要的结果,我们需要在数组中有一个集合。到最后,我们将在一个数组中拥有多个集合。如果你有更好的方法,请提供建议。
假设names
是data
:中的唯一密钥
var data = {
"names":{
"Nancy" : [1,2,3],
"Charles" : [4,5,6],
"Dingo" : [7, 8, 9]
}
}
var i = 0;
for(var name in data.names)
{
data.names[i] = {};
data.names[i][name] = data.names[name];
delete data.names[name];
++i;
}
在此结束时,data
将等于:
data = {
"names" : {
"0" : { "Nancy" : [1,2,3] },
"1" : { "Charles" : [4,5,6] },
"2" : { "Dingo" : [7, 8, 9] }
}
}
假设
data = {
"names":{
"Nancy":[
],
"Charles":[
]
}
}
你是说你想要这个?
{
"names":{
"0": { "Nancy":[
] },
"1": { "Charles":[
] }
}
}
因此:
var result = { "names" : {} }
var keys = Object.keys(data.names);
for(var i=0; i < keys.length; i++){
obj = {};
obj[keys[i]] = data.names[keys[i]];
result.names[i] = obj;
}
虽然这里的其他人已经回答了,但如果只是打印obj中的值,则不需要更改对象。也许这会有所帮助,
var data ={
"names":{
"Nancy":[1,2],
"Charles":[ 3,4 ]
}
}
for(var obj in data.names){
console.log(data.names[obj]);
}
小提琴---https://jsfiddle.net/2dkn9ehn/
相关文章:
- jQuery中是否内置了任何字符串格式化函数
- 为什么这在IE中的工作方式与在Firefox中不同
- 在AngularJS应用程序中使用封装指令和路由的推荐方式是什么
- Windows8应用程序(html&Javascript):从图片库(除了文件选择器)显示图像的另一种方式
- 在localhost Dev Box上测试JSONP请求的最佳方式
- 使用javascript存储变量的最安全方式
- 以可优化的方式使用requirejs加载模板
- 在Highcharts中,我们可以通过任何方式在渲染图表之前获得plotWidth和plotHeight
- 任何方式使AJAX调用Gmail API,而无需通过JS库
- JavaScript-如何以这种方式格式化此JSON
- Rails 以一种方式格式化 DateTime.now 和 DateTime.yesterday 另一种方式 - 我如何
- Javascript以漂亮的印刷方式格式化var_dump以提高可读性
- JavaScript/jQuery:格式化日期计算结果的最佳方式
- 如何以可读的方式格式化CouchDB设计文档
- 通过JSON/AAJAX将用户输入的文本格式化发送到PHP的正确方式
- 如何以特定方式格式化数字
- 如何按照用户键入的方式格式化数据
- $.getJSON请求的行为方式我不清楚.不确定如何使用callback=格式化请求
- 是否可以不迭代地以格式化的方式输出DataFrame ?
- 如何使用javascript格式化数字(在Safari中使用的方式)