12

我正在使用 jQuery 的 getJSON 调用检索 JSON。

我的问题是返回的 JSON 中的某些字段中有空格。

如何在不更改源数据的情况下从 JSON 中检索这些值?请参阅下面标有“错误”的行:

$.getJSON(url, null, function(objData) {
  $.each(objData.data, function(i, item) {
    var zip = item.Zip;
    var fname = item.First Name; //ERROR
  });
});

示例 JSON:

jsonp123456789({"data":[{"Zip":"12345","First Name":"Bob"},{"Zip":"23456","First Name":"Joe"},{"Zip":"34567","First Name":"Bill"}]})

谢谢

4

2 回答 2

22

数组成员访问表示法也适用于对象。

$.getJSON(url, null, function(objData) {
  $.each(objData.data, function(i, item) {
    var zip = item.Zip;
    var fname = item['First Name'];
  });
});

您可以将其用于任意字符串(那些不是合法标识符)以及变量。

var fieldName = "First Name";
var fname = item[fieldName];
于 2009-12-07T23:55:24.403 回答
8
$.getJSON(url, null, function(objData) {
  $.each(objData.data, function(i, item) {
    var zip = item.Zip;
    var fname = item["First Name"]; //Changed this
  });
});

使用作为键而不是点符号来引用项目

于 2009-12-07T23:55:40.020 回答