javascript - json foreach数组数组与jquery

标签 javascript jquery json foreach

[
    [
        {
            "Id": 3,
            "Code": "232",
            "TicketImage": "0"
        }
    ],
    [
        {
            "Id": 1,
            "Code": "23",
            "TicketImage": "1"
        },
        {
            "Id": 2,
            "Code": "24",
            "TicketImage": "1"
        }
    ],
    []
]

我有这个 JSon 对象,我正在尝试解析它。

var res = jQuery.parseJSON(JSON.stringify(obj.Message));

              $.each(res, function (i, tickets) {
                  $.each(tickets, function (i, ticket) {
                      console.log($(this));
                  });
              });

当我尝试这个时,我得到了无数个带有字母的弹出窗口。但我想要对象。

我如何解析这个 JSON 数据?

更新:

           $.each(res, function (i, tickets) {
                  $.each(tickets, function (i, ticket) { 
                      console.log(ticket.Code);
                      console.log(ticket.TicketImage);
                  });
              });

做到了。

最佳答案

小心你覆盖了 i 变量:

$.each(res, function (i, tickets) {
                  $.each(tickets, function (j, ticket) {
                      console.log(this);
                      // as a full string
                      console.log(this.ticketId+' : '+JSON.stringify(this));

                  });
});

除了这个小东西,你的循环是正确的,你不需要你的'this'上的jquery包装器。在 $.each(array,function(k,v){}) 中,k 变量是检索当前对象的键,v 是它的值,因此您也可以通过这样做来访问它:

$.each(res, function (i, tickets) {
                  $.each(res[i], function (j, ticket) {
                      console.log(res[i][j].ticketId+' : '+res[i][j]);
                      // which is the exact same thing as :
                      console.log.(ticket);
                      // and even this:
                      console.(this);

                  });
});

使用“this”的相同代码:

$.each(res, function (i, tickets) {
                  $.each(this, function (j, ticket) {
                      console.log(this.ticketId+' : '+this);
                  });
});

使用每个值:

$.each(res, function (i, tickets) {
                  $.each(tickets, function (j, ticket) {
                      console.log(ticket.ticketId+' : '+ticket);
                  });
});

关于javascript - json foreach数组数组与jquery,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11490305/

相关文章:

javascript - React Router 所需上下文 `router` 未在 `Link` 中指定

javascript - Try and catch 对输入进行校验和验证,以检查 Javascript 中输入的三个部分

jquery - 使用 Jquery 的持久样式表切换器

javascript - jQuery:可排序:列表为空时的占位符

objective-c - __NSCFBoolean isEqualToString :]: unrecognized selector sent to instance

javascript - 如何选择焦点文本区域中的所有文本(在 Safari 中)

javascript - Angular ui.bootstrap.timepicker 落后 1 小时

javascript - 如何在 Pylons 中翻译 javascript 文件

java - Swagger 模型架构不包含主体参数的变量名称

php - 查询 ci 的 mySQL 表中有 JSON 列的位置