字符串到数组javascript

时间:2015-11-26 15:55:23

标签: javascript angularjs angular-ui-tree

在操作JSON对象后,我有一个像:

这样的字符串
[{ContextID:'7',Title:'Rona',TypeId:'1',Children:[{ContextID:'8',Title:'Site internet',TypeId:'2',Children:'null'},{ContextID:'9',Title:'Magasins',TypeId:'2',Children:[{ContextID:'10',Title:'RONA Quincaillerie Delorimier Inc.',TypeId:'4',Children:[{ContextID:'11',Title:'Caisse',TypeId:'3',Children:[{ContextID:'12',Title:'Retour marchandise',TypeId:'3',Children:'null'}]}]}]}]

我想在javascript中将其转换为数组,将其传递给angularjs-ui-tree,就像这样。我试过了JSON.parse(),但它不起作用

[{ContextID:'7',Title:'Rona',TypeId:'1',Children:[{ContextID:'8',Title:'Site internet',TypeId:'2',Children:'null'},{ContextID:'9',Title:'Magasins',TypeId:'2',Children:[{ContextID:'10',Title:'RONA Quincaillerie Delorimier Inc.',TypeId:'4',Children:[{ContextID:'11',Title:'Caisse',TypeId:'3',Children:[{ContextID:'12',Title:'Retour marchandise',TypeId:'3',Children:'null'}]}]}]}]

3 个答案:

答案 0 :(得分:1)

我通过JSON validator运行了您提供的JSON,并收到以下错误消息:

  

根据RFC 4627(JSON规范),JSON输入无效。   意外的文件结束位置376:null

最后,您的JSON似乎缺少}]。通过添加这两个字符,验证器验证了JSON字符串是否有效。

我不确定你对angularjs-ui-tree的要求是什么,但拥有有效的JSON是朝着正确方向迈出的一步。

答案 1 :(得分:0)

您的JSON字符串可能格式错误。尝试用双引号(“)包装键和值。

答案 2 :(得分:0)

通过JSONLint运行JSON后,我意识到你需要在密钥周围使用双引号(ContextID等)来正确解析它。

您可能还想考虑不在数字值周围加上引号。