нужна помощь при получении значения из "{" k1 ":" v1 "," k2 ":" v2 "}" - PullRequest
0 голосов
/ 12 октября 2011

я получил результат от другого кода

elem.getAttribute("additional-attributes")

... результат выглядит так:

"{"k1":"v1", "k2":"v2"}"

так я должен разобрать строку, чтобы получить "v2" из "k2"? или есть лучшие способы получить значение?

Спасибо!

Ответы [ 3 ]

0 голосов
/ 12 октября 2011

Если строка на самом деле похожа на это (обратите внимание на 'как оператор строки):

var string = '{"k1":"v1", "k2":"v2"}'

Вы можете сделать это (преобразовать эту строку в объект JS):

var obj = eval("("+string+")");

А затем для доступа к k2 значению сделайте это:

var k2value = obj.k2;

Если строка плохо отформатирована, вы можете переформатировать ее, чтобы она была действительной строкой JS, а затем выполнить с ней функцию eval (), чтобы сделать ее объектом.

0 голосов
/ 12 октября 2011

ОК, поэтому вы хотите использовать JSON.parse для получения объекта, а затем obj.k1 или obj.k2 для получения значений ...

0 голосов
/ 12 октября 2011

Вы можете просто разделить запятую, а затем двоеточие. Или простое регулярное выражение может добиться цели.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...