Подтвердить что ты не робот

В JavaScript/jQuery, как получить данные с пробелами в имени?

Я получаю JSON с помощью вызова jQuery getJSON.

Моя проблема в том, что некоторые из полей в возвращаемом 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"}]})

Спасибо

4b9b3361

Ответ 1

Атрибуты доступа к членам массива также работают с объектами.

$.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];

Ответ 2

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

ссылается на элемент, используя в качестве ключа вместо точечной нотации