Разобрать объект json с помощью обратной косой черты и добавить его обратно в данные json - PullRequest
0 голосов
/ 23 мая 2018

Интересно, в приведенных ниже JSON можно ли проанализировать один вызов объекта «Данные», удалить обратную косую черту, разделить каждую пару значений ключа в одном объекте, а затем добавить его обратно в исходныйДанные в формате JSON.

This:

{
  "Timestamp": "2018-05-14T20:02:57.000Z",
  "Data": "{\"UserId\":\"00529000001jD4uAAE\",\"CardElement\":\"Total Due\",\"EntityLabel\":\"Total Due\",\"EntityName\":\"Contract Account\",\"TrackingEvent\":\"Field\",\"TrackingService\":\"VCards\"}",
  "CustomerInteractionId": "a1629000000VQgvAAG",
  "Vlocity Tracking Entry Name": "Field"
}

Превращается в это:

 {
  "Timestamp": "2018-05-14T20:02:57.124Z",
  "CustomerInteractionId": "a1629000000VQgvAAG",
  "Vlocity Tracking Entry Name": "Field",
  "UserId": "00529000001jD4uAAE",
  "CardElement": "Total Due",
  "EntityLabel": "Contract Account",
  "TrackingEvent": "Field",
  "TrackingService": "VCards"
}

При возникновении некоторых проблем разбиваются их на свои собственные пары значений ключей и добавляется их обратно вJSON.Может быть в JS или AngularJS

Ответы [ 2 ]

0 голосов
/ 23 мая 2018

   

var datas = {
  "Timestamp": "2018-05-14T20:02:57.000Z",
  "Data": "{\"UserId\":\"00529000001jD4uAAE\",\"CardElement\":\"Total Due\",\"EntityLabel\":\"Total Due\",\"EntityName\":\"Contract Account\",\"TrackingEvent\":\"Field\",\"TrackingService\":\"VCards\"}",
  "CustomerInteractionId": "a1629000000VQgvAAG",
  "Vlocity Tracking Entry Name": "Field"
};

datas = Object.assign({}, datas, JSON.parse(datas.Data));
delete datas.Data;
console.log(datas);
0 голосов
/ 23 мая 2018

Data - это строка в вашем JSON.Вы можете выборочно проанализировать вашу строку, а затем создать новый объект с анализом Data и исходным объектом.Затем удалите Data из нового объекта.

var res = { "Timestamp": "2018-05-14T20:02:57.000Z", "Data": "{\"UserId\":\"00529000001jD4uAAE\",\"CardElement\":\"Total Due\",\"EntityLabel\":\"Total Due\",\"EntityName\":\"Contract Account\",\"TrackingEvent\":\"Field\",\"TrackingService\":\"VCards\"}", "CustomerInteractionId": "a1629000000VQgvAAG", "Vlocity Tracking Entry Name": "Field" },
  result = {...res, ...JSON.parse(res.Data)};
delete result.Data;
console.log(result);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...