Проблема с форматом JSON?

#json

#json

Вопрос:

Я отлаживаю модуль perl, который генерирует JSON, и то, что я знаю о JSON, вы, вероятно, могли бы поместить в наперсток. JSON здесь…..

 xvarStore_json = {
     identifier: 'name',
     label: 'name',
     items: [
          {name: "CR_Local_ID"} ,
          {name: "CR_Patient_ID"} ,
          {name: "test("MEDICARE PART B","xvar:X_Primary_Payer","1","1")"} 
            ]
};
  

Ошибка, которую я получаю в Firebug, заключается в следующем ..

 missing } after property list
    {name: "test("MEDICARE PART B","xvar:X_Primary_Payer","1","1")"}
  

Я был бы рад потратить время на изучение JSON, если бы это не было срочным решением. У кого-нибудь есть идея относительно того, что происходит не так?

Джейни

Комментарии:

1. То, что у вас есть, не является JSON. Просмотрите ссылку Мэтта для получения более подробной информации.

Ответ №1:

Хотя я согласен с @ matt-ball в его ответе, я не думаю, что это действительно проблема здесь. Проблема в этой строке:

 {name: "test("MEDICARE PART B","xvar:X_Primary_Payer","1","1")"}
  

Вам нужно экранировать кавычки внутри фактического значения:

 {name: "test("MEDICARE PART B","xvar:X_Primary_Payer","1","1")"}
  

Комментарии:

1. Вы правы, я еще раз взглянул на проблему и согласен с вашим ответом.

2. ПОТРЯСАЮЩИЙ Grrovetrain! Работает как чемпион!

Ответ №2:

Это не JSON; это литерал объекта JavaScript. Есть очень важное отличие.

Подсветка синтаксиса выдает проблему: вы пытаетесь использовать двойные кавычки внутри строки, которая ограничена двойными кавычками, поэтому строка заканчивается раньше. Вместо этого просто используйте одинарные кавычки для разделения строки.

 {name: 'test("MEDICARE PART B","xvar:X_Primary_Payer","1","1")'}
  

И просто чтобы было совершенно ясно, такого понятия, как «объект JSON», не существует.

Ответ №3:

Проблема с незаконченными кавычками:

Заменить на {name: «test(«MEDICARE PART B», «xvar:X_Primary_Payer»,»1″,»1″)»} с

 {name: "test('MEDICARE PART B','xvar:X_Primary_Payer','1','1')"}  
  

Ваш объект JSON должен выглядеть как:

 xvarStore_json = {
         identifier: 'name',
         label: 'name',
         items: [
              {name: "CR_Local_ID"} ,
              {name: "CR_Patient_ID"} ,
              {name: "test('MEDICARE PART B','xvar:X_Primary_Payer','1','1')"}   
                ]
    };