为什么我不能用json数据进行迭代?

时间:2010-08-21 05:47:58

标签: json iteration type-mismatch

我试过了,

 var rows = [];
    for (var i = 0; i < 10; i++) {
        rows.push(['row' + i, i]);
    }

   data.addRows(rows);

这似乎有效,但当我对json做同样的事情时,

    var data = new google.visualization.DataTable();
    data.addColumn('string', 'dbZipcode');
    data.addColumn('number', 'countusers');
var rows = [];
for (var i = 0; i < response.customerlist.length; i++) {
    rows.push(['Zipcode-' +  response.customerlist[i].dbZipcode, 
                               response.customerlist[i].countusers]);
}
   data.addRows(rows);

我给了我一个错误Error: Type mismatch. Value 1 does not match type number in column index。任何建议。

我的json数据看起来像这样,

 {
    "customerlist": [
        { "dbZipcode": "21313213",     "countusers": "1" },
        { "dbZipcode": "2313213",      "countusers": "1" },
        { "dbZipcode": "23324324",     "countusers": "1" },
        { "dbZipcode": "2342432",      "countusers": "1" },
        { "dbZipcode": "32424422343",  "countusers": "1" },
        { "dbZipcode": "324324324",    "countusers": "1" },
        { "dbZipcode": "324324324324", "countusers": "1" },
        { "dbZipcode": "3244324",      "countusers": "1" },
        { "dbZipcode": "3422344",      "countusers": "1" },
        { "dbZipcode": "342424324",    "countusers": "1" },
        { "dbZipcode": "3424324",      "countusers": "1" },
        { "dbZipcode": "435345",       "countusers": "1" },
        { "dbZipcode": "627028",       "countusers": "1" },
        { "dbZipcode": "641030",       "countusers": "2" },
        { "dbZipcode": "642582",       "countusers": "1" }
    ]
}

1 个答案:

答案 0 :(得分:1)

您的JSON中的“1”被视为字符串而不是数字吗?

尝试

response.customerlist[i].countusers] - 0

以便将其视为整数