我搜索但我无法找到任何解决方案。我从服务器获取此字符串:
[
{
'id': 0,
'name': 'Adventure Works',
'uniqueName': '[AdventureWorksDW2012Multidimensional-EE].[Adventure Works]'
},
{
'id': 1,
'name': 'Channel Sales',
'uniqueName': '[AdventureWorksDW2012Multidimensional-EE].[Channel Sales]'
},
{
'id': 2,
'name': 'Direct Sales',
'uniqueName': '[AdventureWorksDW2012Multidimensional-EE].[Direct Sales]'
},
{
'id': 3,
'name': 'Finance',
'uniqueName': '[AdventureWorksDW2012Multidimensional-EE].[Finance]'
},
{
'id': 4,
'name': 'Mined Customers',
'uniqueName': '[AdventureWorksDW2012Multidimensional-EE].[Mined Customers]'
},
{
'id': 5,
'name': 'Sales Summary',
'uniqueName': '[AdventureWorksDW2012Multidimensional-EE].[Sales Summary]'
},
{
'id': 6,
'name': 'Sales Targets',
'uniqueName': '[AdventureWorksDW2012Multidimensional-EE].[Sales Targets]'
}
]
但它是一个字符串,我希望它作为JavaScript对象。如果我手动从字符串中删除第一个和最后一个"
,那么每件事情都可以,但如何将此字符串转换为JavaScript对象?
更新
如果我使用jquery进行解析:
var data = $.parseJSON( response.d );
我收到此错误:
Uncaught TypeError: Cannot use 'in' operator to search for '727' in {'id':0,'name':'Adventure Works','uniqueName':'[AdventureWorksDW2012Multidimensional-EE].[Adventure Works]'},{'id':1,'name':'Channel Sales','uniqueName':'[AdventureWorksDW2012Multi...<omitted>...'}
**编辑**
这是JSFIDDLE链接。
答案 0 :(得分:1)
使用JSON.parse("[{...}]");
将其转换为Javascript对象。
答案 1 :(得分:1)
您可以将JSON字符串的JSON.parse()
方法用于Javascript对象。
答案 2 :(得分:0)
您可以使用:
JSON.parse("some json stringified object")
要从json对象创建字符串,请使用:
JSON.stringify(OBJECT);