我的 Controller 有一个方法返回 jsonArray 的字符串表示作为
jsonArray.toString()
下面是ajax方法
function loadPropertyFile(url) {
$.ajax({
type: "GET",
url: url,
dataType: "text",
success: function(response){
var obj = jQuery.parseJSON(response);
alert(obj);
}
});
这里解析出来的变量obj是
"[{"portal.home":"Home"},{"displaytag.tracking.id":"Item ID"},{"displaytag.tracking.itemName":"Item Name"},{"displaytag.tracking.itemType":"Type"}]"
现在我想从js中的键访问值
即。我想访问键“displaytag.tracking.id”的值
问题是当我在做 console.log(obj[0]["portal.home"]); 它给我错误 TypeError: obj[0] is undefined强>
我该怎么办?
最佳答案
首先需要将JSON字符串解析为JavaScript对象,然后访问所需的属性:
var obj = JSON.parse(json);
console.log(obj[0]["portal.home"]);
在没有 native JSON 支持的旧浏览器中,您应该使用类似 Crockford 的 json2.js 的浏览器。 , 这会给你一个;请不要在 JSON 上使用 eval(),因为它会导致非常糟糕的结果。
关于javascript - 如何在js中读取一个json对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14519041/