У меня есть объект JSON, который имеет пару значений ключа, и значение одной такой пары равно 0E10.
Проблема в том, что это значение должно быть строкой, но оно обрабатывается как число с плавающей запятой из-за наличия буквы E после числа, поэтому оно показывает 0 всякий раз, когда я печатаю это значение (0*e +10).
Может кто-нибудь, пожалуйста, помогите мне решить эту проблему?
Я использую perl для передачи JSON и чтения его через Javascript. (Приемлемо решение на любом языке)
Это то, что я получаю, когда печатаю JSON.
КЛЮЧ1: 0E10
KEY2: "XYZ"
Вы можете ясно видеть, что если значение является строкой, оно помещается в кавычки (""), но для 0E10 оно не использует кавычки (").
Проблема в моем случае заключается в том, что я читаю JSON из API, управление которым мне недоступно. У меня есть серверная служба, написанная на Perl, которая передает JSON, возвращаемый API. Поэтому всякий раз, когда я нажимаю URL-адрес, вызывается внутренняя служба, написанная на Perl. Эта служба получает JSON от API и возвращает JSON службе, которая обращается к URL-адресу.
0E10
, а не"0E10"
, поэтому он не ведет себя как строка - person mpapec   schedule 10.07.2013perldoc
perlnumber
поможет. - person G. Cito   schedule 10.07.2013key: 0E10
иначе, чемkey: 0
, и что вам нужен первый? - person ikegami   schedule 10.07.2013$KEY1.""
перед возвратом JSON..
сделает это строкой. - person   schedule 10.07.2013key: 0E10
. Неkey: 0
, неkey: '0E10'
. - person ikegami   schedule 10.07.2013