2016-10-21 10 views
0

Я получаю сообщение, что мне нужно разобрать, чтобы создать объект JSON из приложения .NET в javascript, но когда я разбираю сообщение, используя следующие инструкции:Строка JSON, содержащая "после применения JSON.parse

var messagePropertiesString = JSON.stringify(messageObject.json); 
var messageProperties = JSON.parse(messagePropertiesString); 

результаты содержит обратную косую черту, так I'm не в состоянии преобразовать его в объект JSon, поскольку он имеет обратную косую черту.

{\"TravelNumber\":1,\"Unit\":\"g\",\"Weight\":0} 

Как я могу удалить дополнительный обратный слэш?

+0

messageProperties = messageProperties.replace ('\\', ''); ? – Treast

+0

с RegExp: messagePropertiesString.replace (/ \\/g, '') –

+0

Но для меня проблема относится к стороне .NET.;) –

ответ

3

messageObject.json уже является строкой, поэтому нет необходимости ее подкреплять, и когда вы делаете, вы получаете строку, которая должна быть проанализирована дважды (первый синтаксический разбор просто отменит строку и вернет вам строку JSON), чтобы получить объект:

var messagePropertiesString = JSON.stringify(messageObject.json); 
var messageProperties = JSON.parse(JSON.parse(messagePropertiesString)); 

Вместо вы должны пропустить stringify, и просто разобрать его однажды:

var messageProperties = JSON.parse(messageObject.json); 

 Смежные вопросы

  • Нет связанных вопросов^_^