在控制台日志中运行命令digitalInfo;时,我的页面提供以下数据。

> digitalInfo;
< >{version: "1.0", page: {...}, attributes: {...},event: Array(0), ...}


如果我展开此响应并转到"page"键,则页面键的日期低于以下日期:

>page:
>pageInfo: {pageName: "Thank You", language:"en"}
>productInfo: [{}]
>user: {loginStatus: "Not LoggedIn", userType: "Anonymous"}


如果展开productInfo,则得到productInfo密钥的以下日期:

productInfo: Array(1)
0
flightTime: "Flight-1 06:50~Flight-1 08:35"


现在我想获取flightTime的值,所以我在使用以下命令(第一个命令):

var departureInfo=digitalInfo.page.productInfo[0].flightTime;


但这给了我错误@productInfo [0]作为Cannot read property '0' of undefined

我修改了命令,并将其设置为(命令第二个):

var departureInfo=digitalInfo.page.productInfo.flightTime;


但是这次它给我的错误是:Cannot read property of 'flightTime' undefined

当我包含在javascript中时,这些命令将引发错误。但是,如果我直接在控制台上运行第一个命令,则输出为:

>var departureInfo=digitalInfo.page.productInfo[0].flightTime;
>departureInfo;
<"Flight-1 06:50~Flight-1 08:35"


码:

<script>

(function()
{
     'use strict';
      var cnt=6000;
      function init()
      {
          if(typeof jQuery !="undefined")
          {
            content_change();
          }
          else
          {
              cnt=cnt-500;
              if(cnt>500)setTimeout(init,500);
          }
      }


function content_change()
{
  console.log("entered the content change function");

var departureInfo=digitalInfo.page.productInfo[0].flightTime;


    if(checking value of departureInfo)
    {
console.log("Entered the if loop");
    }
    else
    {
       cnt=cnt-500;
          if(cnt>500)setTimeout(content_change,500);
    }
 }
 init();
})()
</script>

最佳答案

我能够通过setTimeout函数解决此问题。谢谢大家的建议。

09-27 19:28