如何使用javascript创建以下类型的json数组?
xAxis: {
categories: [
'Jan',
'Feb',
'Mar',
'Apr',
'May',
'Jun',
'Jul',
'Aug',
'Sep',
'Oct',
'Nov',
'Dec'
]
}
答案 0 :(得分:12)
嗯,你有两个选择:
创建数组,然后将其字符串化:
var categories = [
'Jan',
'Feb',
'Mar',
'Apr',
'May',
'Jun',
'Jul',
'Aug',
'Sep',
'Oct',
'Nov',
'Dec'
];
var json = JSON.stringify(categories);
JSON.stringify
存在于大多数现代浏览器中,您可以对其进行填充。 (有几个垫片可用,尤其是来自Crockford's github page - Crockford是定义JSON的人。)
或者直接创建JSON字符串:
var json = '["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]';
重新编辑:这不再是“数组”了,它是一个带有数组的对象(或者一个对象,其中包含中的数组)。但是,它没有在基础上改变答案:
var xAxis = { categories: [ 'Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec' ] };
var json = JSON.stringify(xAxis);
或
var json = '{"categories": ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]}';
我不确定你是否想要那里的xAxis
图层。如果是这样,它只是上面的另一层,例如:
var obj = { xAxis: { categories: [ 'Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec' ] } };
var json = JSON.stringify(obj);
或
var json = '{"xAxis": {"categories": ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]}}';
有关the JSON home page的JSON的更多信息。从根本上说,所有字符串必须是双引号(非单引号),并且所有属性名称必须是双引号。