2013-05-11 383 views
17

Here I'm creating a JavaScript object and converting it to a JSON string的内容,但JSON.stringify返回"[object Object]"而不是显示对象的内容。我该如何解决这个问题,以便JSON字符串实际上包含对象的内容?JSON.stringify返回“[object Object]”而不是对象

var theObject = {name:{firstName:"Mark", lastName:"Bob"}}; 
alert(JSON.stringify(theObject.toString())); //this alerts "[object Object]" 
+0

警报不显示对象,只有字符串,你应该使用控制台。并且将一个对象转换为一个字符串也是一样的,最终会得到[object Object],因为这是对象的字符串表示形式。 – adeneo 2013-05-11 03:43:40

+2

'theObject.toString()'='“[object Object]”' – 2013-05-11 03:59:21

+1

有没有想过为什么[object Object]?看看这个答案:http://stackoverflow.com/a/25419538/3001704 – chetan92 2016-11-15 09:33:55

回答

26

使用alert(JSON.stringify(theObject));

+0

如何从json字符串获取名称 – oxygen 2016-05-31 12:19:45

+0

最佳解决方案! – 2017-04-25 22:11:42

0

使用

var theObject = {name:{firstName:"Mark", lastName:"Bob"}}; 
alert(JSON.stringify(theObject)); 
0

JSON.stringify返回“的翻译:”在这种情况下

那是因为你调用对象的toString()序列化之前:

JSON.stringify(theObject.toString()) /* <-- here */ 

删除toString()电话,它应该工作正常:

alert(JSON.stringify(theObject)); 
相关问题