需要帮助从“{”k1“:”v1“,”k2“:”v2“}”获取值

时间:2011-10-11 22:25:22

标签: javascript attributes

我从别人的代码中得到了结果

elem.getAttribute("additional-attributes")

......结果如下:

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

所以我必须解析字符串以从“k2”获得“v2”吗?还是有更好的方法来获得价值?

谢谢!

3 个答案:

答案 0 :(得分:0)

你可以用逗号分隔然后冒号。或者一个简单的正则表达式可以做到这一点。

答案 1 :(得分:0)

如果字符串实际上是这样的(请注意'作为字符串运算符):

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

您可以这样做(将该字符串转换为JS对象):

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

然后访问k2值执行此操作:

var k2value = obj.k2;

如果字符串格式不正确,您可以重新格式化它以使其成为有效的JS字符串,然后对其执行eval()以使其成为对象。

答案 2 :(得分:0)

好的,您希望使用JSON.parse来获取对象,然后使用obj.k1obj.k2来获取值...