我正在尝试调整highchart来满足我的需求。我想制作一个类似的数组(参见下文)
categories: ['2015-04-07', '2015-08-07', '2015-12-07', '2015-16-07', '2015-20-07', '2015-24-07', 2015-28-07', '2015-22-07', '2015-26-07', '2015-30-07', '2015-34-07', '2015-38-07']
我有json的东西,它将检索到的数据eqaul解析为上面的每个数据。
$.each(JSON.parse(response.var), function(index, value){
//value.creation_date.replace('00:00:00', '').trim();
});
对于每个value.creation_date,内容如(2015-05-14 00:00:00)所以我必须使用
replace('00:00:00', '').trim();
这样结果将是“2015-05-14”。如何把每个
value.creation_date.replace('00:00:00', '').trim()
就像一个数组,使它看起来像这样
categories: ['2015-04-07', '2015-08-07', '2015-12-07', '2015-16-07', '2015-20-07', '2015-24-07', 2015-28-07', '2015-22-07', '2015-26-07', '2015-30-07', '2015-34-07', '2015-38-07']
我尝试声明像
这样的全局变量var num = "";
然后在$ .each
内num = + "," + value.creation_date.replace('00:00:00', '').trim();
并尝试显示它是否有效
$("body").html(num);
但遗憾的是没有工作。任何想法,线索,推荐,建议?
答案 0 :(得分:1)
这样的事情应该这样做
var data = JSON.parse(response.var);
$.each(data, function(index, value){
data[index].creation_date = data[index].creation_date.replace('00:00:00', '').trim();
});
最初看起来像这样的数据
[{
creation_date: '2015-05-14 00:00:00'
}, {
creation_date: '2015-05-13 00:00:00'
}, {
creation_date: '2015-05-12 00:00:00'
}]
现在看起来像这样
[{
creation_date: '2015-05-14'
}, {
creation_date: '2015-05-13'
}, {
creation_date: '2015-05-12'
}]
或者你可以像这样使用javascript .forEach()
var data = JSON.parse(response.var);
data.forEach(function(value, index){
data[index].creation_date = data[index].creation_date.replace('00:00:00', '').trim();
});
答案 1 :(得分:1)
如果我理解你的问题,这是我的解决方案
var categories = [];
$.each(JSON.parse(response.var), function(index, value){
categories.push(value.creation_date.replace('00:00:00', '').trim());
});
console.log(categories);
答案 2 :(得分:1)
下面的代码应该为您提供一个数组:
var num = [];
$.each(JSON.parse(response.var), function(index, value){
num.push(value.creation_date.replace('00:00:00', '').trim()) ;
});
答案 3 :(得分:1)
就像一个数组,使它看起来像这样
categories: ['2015-04-07', '2015-08-07', '2015-12-07', '2015-16-07', '2015-20-07', '2015-24-07', 2015-28-07', '2015-22-07', '2015-26-07', '2015-30-07', '2015-34-07', '2015-38-07']
我的理解是,您正在尝试将数组作为输入提供给Highchart。
正如你所提到的,你做了类似的事,
num = + "," + value.creation_date.replace('00:00:00', '').trim();
为什么呢?你需要的只是一个数组。运行此fiddle并查看控制台。
var xAxis = {}
xAxis.categories = [];
xAxis.categories.push('2015-04-07');
xAxis.categories.push('2015-04-08');
xAxis.categories.push('2015-04-09');
xAxis.categories.push('2015-04-10');
console.log(xAxis);
console.log(xAxis.categories);