Javascript 从(JSON)字符串获取值
我有一个通过HTTP请求传递的字符串。然而,我无法从中获得价值。字符串如下所示:Javascript 从(JSON)字符串获取值,javascript,json,node.js,Javascript,Json,Node.js,我有一个通过HTTP请求传递的字符串。然而,我无法从中获得价值。字符串如下所示: var a = {"health":"img/biking_cropped.jpg","budget":"img/hip_cropped.jpg","culture":"img/old_museum_cropped.jpg"} 然而,我无法得到健康的价值作为一个例子。但是,[0]只返回{。使用JSON.parse会使运行它的服务器崩溃。这里a是一个对象 除了使用a.health等,您还可以使用for.in来获取密
var a = {"health":"img/biking_cropped.jpg","budget":"img/hip_cropped.jpg","culture":"img/old_museum_cropped.jpg"}
然而,我无法得到健康的价值作为一个例子。但是,[0]只返回{。使用JSON.parse会使运行它的服务器崩溃。这里a是一个对象
除了使用a.health等,您还可以使用for.in来获取密钥及其值
var a ={
"health":"img/biking_cropped.jpg",
"budget":"img/hip_cropped.jpg",
"culture":"img/old_museum_cropped.jpg"
}
for(var keys in a){
document.write('<pre>'+keys + '--'+a[keys]+'<pre>')
}
检查这个
您还可以使用点或括号[]表示法来获取键的值
可能您正在尝试执行[key]。例如['health']您需要选择值并将值分配给变量。您可以使用点表示法。也可以使用括号表示法[]
这里有一个代码笔链接使用JSON解析器。这里有很多JSON解析器
[0]返回{的唯一原因是整个json对象是字符串
检查变量的类型。它应该是一个对象vs字符串。它对我有效:它不是一个字符串,并且工作正常字符串如下-它不是一个字符串。但是[0]只给出{back.-你不会从你提供的代码中得到这个结果。使用JSON.parse会使它运行的服务器崩溃-以什么方式?报告了什么错误?我认为问题是我通过缓冲区获取了值并将其字符串化。我尝试了另一种方法,或者改变它,这是一个对象,而不是字符串。如果str它应该是:var a=某物;
var a = {"health":"img/biking_cropped.jpg","budget":"img/hip_cropped.jpg","culture":"img/old_museum_cropped.jpg"};
var health = a['health'];
var budget = a.budget;
var culture = a.culture;
console.log(health + "---- " + budget + " ---- " + culture)
// img/biking_cropped.jpg---- img/hip_cropped.jpg ---- img/old_museum_cropped.jpg
var a = "abc";
console.log(a[0]); // Prints a
typeof a; //prints "string"
var b = {};
typeof b; //prints "object"