2

我喜欢像这样将数组转换为 json 对象

var obj = [{item:'name1',start:new date()}, {item:'name2',start:new date()},{item:'name3',start:new date()}]

我正在使用一维数组意味着工作正常。检查此链接http://jsfiddle.net/H4ezf/1/

 var objectArray= {};    
 objectArray['title']='All Day Event';
 objectArray['start']=new Date(y, m, 1);
 console.log(JSON.stringify(objectArray)); 

输出为:{"title":"All Day Event","start":"2012-06-30T18:30:00.000Z"}

但我尝试使用 json stringify 像这样将数组列表转换为列表 json 对象

var objectArray= {};    
objectArray[0]['title']='name1';
objectArray[0]['start']=new Date();
objectArray[1]['title']='name2';
objectArray[1]['start']=new Date();
console.log(JSON.stringify(objectArray));

它不工作。我在这里错了。请任何人都可以帮我解决这个问题

4

3 回答 3

6

你不可以做这个:

var objectArray= {};    
objectArray[0]['title']='name1';

因为objectArray[0]还不存在。该索引处没有数组,因此您不能在索引处添加字符串。你必须先声明数组。您的其余代码工作得很好。

JSFIDDLE

于 2012-07-30T14:51:10.743 回答
2
var objectArray= [];
objectArray[0] = {}
objectArray[0]['title']='name1';
objectArray[0]['start']=new Date();
objectArray[1] = {}
objectArray[1]['title']='name2';
objectArray[1]['start']=new Date();
console.log(JSON.stringify(objectArray));​
于 2012-07-30T14:52:58.943 回答
1

试试这样:

var objectArray = [];
objectArray[0] = {};
objectArray[0]['title'] = 'name1';
objectArray[0]['start'] = new Date();
于 2012-07-30T14:52:13.913 回答