2012-07-30 36 views
2

的名单我想数组转换为JSON对象,这样如何排列的列表转换为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字符串化这样

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)); 

它不工作列出JSON对象。这里我错了什么。 请任何人能帮助我解决这个问题

回答

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));​ 
+1

感谢您的回答其工作的罚款。我发布这个链接给其他人http://jsfiddle.net/H4ezf/2/ - 这是我需要的 – MMK 2012-07-30 15:00:17

6

你不能做到这一点:

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

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

JSFIDDLE

1

尝试这样的:

var objectArray = []; 
objectArray[0] = {}; 
objectArray[0]['title'] = 'name1'; 
objectArray[0]['start'] = new Date(); 
相关问题