您好我需要将字符串转换为JSON对象,以便我可以从中获取值 下面是我的字符串
{“USER_NAME”:“Desc”,“PASSWORD”:“hiiiiiii”}
我尝试了以下代码
var data='{ "USER_NAME": "Desc", "PASSWORD": "hiiiiiii"}'
var output=JSON.parse(data);
var user=output["USER_NAME"];
console.log(user)
但我得到的错误如下
Unexpected token u
我被困在这里任何帮助都会有所帮助
答案 0 :(得分:2)
错误Unexpected token u
不会出现在您作为示例数据发布的内容中,但 是您在使用JSON时看到的常见错误,因为人们经常创建不正确的(无效)导致该错误的JSON。
JSON是JavaScript对象初始化程序语法的子集(松散地,“JavaScript对象文字”),但作为子集,其规则与JavaScript不同(更严格)。 / p>
导致问题的实际JSON字符串可能如下所示:
{user_name: "Desc", password: "hiiiiiii"}
...这是无效的,因为密钥(user_name
和password
)必须在JSON中用双引号括起来。这是一个常见错误,因为它们不必是JavaScript;但是JSON要求他们这样做。
因此,有效版本看起来更像您在问题中发布的内容:
{"user_name": "Desc", "password": "hiiiiiii"}
答案 1 :(得分:0)
这是你想要的吗?
console.log(JSON.parse('{ "USER_NAME": "Desc", "PASSWORD": "hiiiiiii"}'));
//Object {USER_NAME: "Desc", PASSWORD: "hiiiiiii"}
答案 2 :(得分:-5)
你好请试试这个我不确定可能会工作
var str = '{ "USER_NAME": "Desc", "PASSWORD": "hiiiiiii"} }';
var json = JSON.stringify(eval("(" + str + ")"));