Строка в массиве JavaScript
После манипуляции с объектом 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 ответа
Я запустил JSON, предоставленный вами через валидатор JSON, и получил следующее сообщение об ошибке:
Вход JSON НЕ действителен в соответствии с RFC 4627 (спецификация JSON). Неожиданная позиция конца файла 376: ноль
Похоже, что ваш JSON отсутствует }]
в конце. Добавив эти два символа, валидатор проверил правильность строки JSON.
Я не уверен, что то, о чем вы просите, связано с angularjs-ui-tree, но наличие действительного JSON - это шаг в правильном направлении.
После запуска вашего JSON через JSONLint я понял, что вам нужно использовать двойные кавычки вокруг ваших ключей (ContextID и т. Д.), Чтобы правильно его проанализировать.
Вы также можете не заключать в кавычки числовые значения.
Ваша строка JSON может быть повреждена. Попробуйте заключить ключи и значения в двойные кавычки (").