for (var ключ в объекте) - возвращение неопределенного - javascript - PullRequest
0 голосов
/ 30 апреля 2018

Я уверен, что я сделал что-то глупое, но я не могу понять это.

Работая в Google Apps Script, у меня есть объект примерно такой:

{
  "advertiserId":"123456",
  "advertiserName":"Name",
  "advertiserVariables":{
    "U5":{
      "reportName":"transaction_date",
      "dataType":"STRING"
    },
    "U6":{
      "reportName":"Page_URL",
      "dataType":"STRING"
    },
    "U7":{
      "reportName":"Custom_1",
      "dataType":"STRING"
    },
    "U8":{
      "reportName":"Custom_2",
      "dataType":"STRING"
    },
    "U9":{
      "reportName":"Custom_3",
      "dataType":"STRING"
    },
    "U1":{
      "reportName":"pageType",
      "dataType":"NUMBER"
    },
    "U2":{
      "reportName":"productName",
      "dataType":"STRING"
    },
    "U3":{
      "reportName":"productId",
      "dataType":"NUMBER"
    },
    "U4":{
      "reportName":"productCategory",
      "dataType":"STRING"
    }
  },
  "audienceSets":{
    "4098242":{
      "tagName":"Name - Tag",
      "audienceSetName":"Visitors",
      "audienceGroups":{
        "productCategory":{
          "variableType":"U4",
          "audienceGroupName":"productCategory",
          "dataType":"STRING",
          "values":["category1","category2"],
          "uniqueValues":2,
          "active":true,
          "recency":30
        }
      }
    }
  },
  "shortAdvertiserName":"Name"
}

и в функции я хочу перебрать каждый tagId в audienceSets:

function buildRemarketingList(parameters) {

  initProfileId();

  Logger.log(parameters);

  for (var tagId in parameters.audienceSets) {

    Logger.log(tagId);
    Logger.log(parameters.audienceSets[tagId]);

  }
}

Первое действие журнала возвращает объект, как и ожидалось, с несколькими объектами в пределах audienceSets. Регистрация первого значения tag также работает как ожидалось. Однако затем я получаю undefined для строки parameters.audienceSets[tagId], и второй цикл не работает.

Поскольку значения tagId генерируются непосредственно из объекта, я не понимаю, как это может пойти не так?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...