如何从一个JSON对象创建两个具有不同值的数组
How to create two arrays with different values in them from a JSON object?
我有以下JSON数据:
jobHistoryJsonLst = [{
"uuid" : "bGd_AAABNaMAAAFQHvY0UyTa",
"startDate" : "2015-10-01 15:22:21",
"endDate" : "2015-10-01 15:22:24",
"executionTime" : "0:0:2.951"
}, {
"uuid" : "lat_AAABqh4AAAFPQ8k0U_qu",
"startDate" : "2015-09-23 10:50:02",
"endDate" : "2015-09-23 10:50:06",
"executionTime" : "0:0:3.284"
}]
我想从上面的JSON对象创建两个不同的数组。一个应该包含所有startDate数据,另一个应该包含所有executionTime数据。
期望输出:
startDateArr = ['2015-10-01 15:22:21', '2015-09-23 10:50:02']
execTimeArr = ['0:0:2.951', '0:0:3.284']
您可以使用map(),这意味着处理两次或使用forEach循环一次并将其压入数组。
jobHistoryJsonLst = [{
"uuid" : "bGd_AAABNaMAAAFQHvY0UyTa",
"startDate" : "2015-10-01 15:22:21",
"endDate" : "2015-10-01 15:22:24",
"executionTime" : "0:0:2.951"
}, {
"uuid" : "lat_AAABqh4AAAFPQ8k0U_qu",
"startDate" : "2015-09-23 10:50:02",
"endDate" : "2015-09-23 10:50:06",
"executionTime" : "0:0:3.284"
}];
var start = jobHistoryJsonLst.map( function (obj) { return obj.startDate; } );
var end = jobHistoryJsonLst.map( function (obj) { return obj.endDate; } );
//or
var start = [],
end = [];
jobHistoryJsonLst.forEach( function(obj) {
start.push(obj.startDate);
end.push(obj.endDate);
});
您可以使用.map
或简单的循环,像这样
var jobHistoryJsonLst = [{
"uuid" : "bGd_AAABNaMAAAFQHvY0UyTa",
"startDate" : "2015-10-01 15:22:21",
"endDate" : "2015-10-01 15:22:24",
"executionTime" : "0:0:2.951"
}, {
"uuid" : "lat_AAABqh4AAAFPQ8k0U_qu",
"startDate" : "2015-09-23 10:50:02",
"endDate" : "2015-09-23 10:50:06",
"executionTime" : "0:0:3.284"
}];
var dates = [],
times = [],
len = jobHistoryJsonLst.length, i;
for (i = 0; i < len; i++) {
dates.push(jobHistoryJsonLst[i].endDate);
times.push(jobHistoryJsonLst[i].executionTime);
}
console.log(dates, times);
// or with .map
var dates = jobHistoryJsonLst.map(function (el) {
return el.endDate;
});
var times = jobHistoryJsonLst.map(function (el) {
return el.executionTime;
})
console.log(dates, times);
相关文章:
- 如何使用 node.js 比较两个 json 数组
- 用每小时的差值填充数组/列表-从下拉列表中给定两个时间值
- 访问$.ajax()函数中的两个不同数组
- 正在更新mongod中两个对象内部的数组
- 如何使用javascript合并两个对象数组
- 比较包含多个值对的两个JavaScript数组
- jQuery对象从html表中查询为两个一维数组,用于Chartist图表
- 检查来自不同数组的两个元素的一个属性是否相等
- 如何在javascript中合并两个对象数组
- 如何获取数组第一个元素的范围
- 捕获一组两个特殊字符之间的所有内容,但允许角色在正文中出现一次
- 使用具有不同属性数的两个或多个着色器时发生冲突
- JSON数组-多个有效答案的可能性
- 编写一个函数,将数组(第一个参数)拆分为大小(第二个参数)的长度组,并将它们作为多维数组返回
- 如何添加值到javascript数组两次或更多
- 使用.shift()更新数组'5个元素
- JavaScript 过滤器数组多个条件
- 如果数组第一个元素中的字符串包含数组第二个元素中字符串的所有字母,则返回true
- Javascript序列化数组多个表单问题
- 编写一个函数,将数组(第一个参数)拆分为大小相同的组(第二个参数),并将其作为多维数组返回