首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用jquery解析json

使用jquery解析json
EN

Stack Overflow用户
提问于 2011-06-07 05:22:21
回答 4查看 300关注 0票数 0

所以我有一个json对象

代码语言:javascript
复制
var json = {"School":{"Keywords":"HBS","SchoolName":"","SchoolUrl":"/Careers/Apply/University_recruiting/Schools/HBS.aspx"}, "School":{"Keywords":"Stanford","SchoolName":"","SchoolUrl":"/Careers/Apply/University_recruiting/Schools/Stanford.aspx"}}

我想遍历它,以找到这个对象中的所有关键字。我尝试过$(json.School).each(function(){ console.log(this.Keywords) },但它似乎不起作用。有什么线索吗?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2011-06-07 05:24:30

$.each与数组一起使用。你所拥有的不是一个数组。它是一个带有属性的简单javascript对象。下面是javascript中数组的样子:

代码语言:javascript
复制
var json = [
    {
        "Keywords":"HBS",
        "SchoolName":"",
        "SchoolUrl":"/Careers/Apply/University_recruiting/Schools/HBS.aspx"
    }, 
    {
        "Keywords":"Stanford",
        "SchoolName":"",
        "SchoolUrl":"/Careers/Apply/University_recruiting/Schools/Stanford.aspx"
    }
];

现在你可以循环了:

代码语言:javascript
复制
$.each(json, function() {
    console.log(this.Keywords);
});

这是一个working live demo

票数 0
EN

Stack Overflow用户

发布于 2011-06-07 05:24:14

您的json对象是一个嵌套的字典数组。使用字符串引用其元素,如下所示:

代码语言:javascript
复制
$.each(json['School'], function() {...
票数 1
EN

Stack Overflow用户

发布于 2011-06-07 05:25:44

您应该使用for...in

代码语言:javascript
复制
for (key in json){
    if (json.hasOwnProperty(key)) {
        alert(json[key]);
    }
}

始终检查属性是否属于对象,以避免从原型继承属性

编辑-这是一种迭代对象属性的方法,但我不知道您的对象是否有效

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6258170

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档