簡體   English   中英

獲取在 API 調用中聲明的變量(函數中 function 中的 for 循環)或在 JavaScript 中將其聲明為全局變量

[英]Getting a variable declared within an API call (for loop within a function within a function) or declaring it as global in JavaScript

我已經查看並看到了不同的迭代,但沒有任何效果。 在這種情況下,我想要的變量在 function 內的 function 內的 for 循環中。 我試過先聲明變量,然后在 function 中定義它們。 我已經嘗試在它們內部調用函數以嘗試在函數之外檢索它,等等。

期望的結果:我只想在 function 中創建的 function 之外調用變量“FIRM”(這樣我就可以將變量設為全局變量)。 或者我只是希望將變量 FIRM 創建為全局變量本身。

這非常令人困惑,因為當我也在自身之外嘗試 GetData() 以獲取變量時,無法識別 function。

JS:

var FIRM;

function GetData() {
fetch('https://hazards.fema.gov/gis/nfhl/rest/services/FIRMette/NFHLREST_FIRMette/MapServer/1/query?where=&text=&objectIds=&time=&geometry=-96.6666%2C32.333&geometryType=esriGeometryPoint&inSR=4326&spatialRel=esriSpatialRelWithin&distance=&units=esriSRUnit_Foot&relationParam=&outFields=FIRM_PAN%2C+EFF_DATE&returnGeometry=false&returnTrueCurves=false&maxAllowableOffset=&geometryPrecision=&outSR=&havingClause=&returnIdsOnly=false&returnCountOnly=false&orderByFields=&groupByFieldsForStatistics=&outStatistics=&returnZ=false&returnM=false&gdbVersion=&historicMoment=&returnDistinctValues=false&resultOffset=&resultRecordCount=&returnExtentOnly=false&datumTransformation=&parameterValues=&rangeValues=&quantizationParameters=&featureEncoding=esriDefault&f=pjson')
            .then(function (response) {
                return response.json();
            })
            .then (function (data) {
                appendData(data);
            })

            .catch(function (err) {
                console.log('error: ' + err);
            });


function appendData(data) {
            
               for (let obj of data['features']) {
                 let FIRM = obj['attributes']['FIRM_PAN'];
                 let FIRM_USTdate = obj['attributes']['EFF_DATE']
                 console.log(FIRM);
                 let FIRMdate = new Date(FIRM_USTdate);
                 console.log(FIRMdate.toLocaleDateString());
                  }
              }
    };

console.log(FIRM);

HTML:


<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>JSON Test</title>
</head>
<body>
  
  <button id="SearchButton" onclick="GetData()">Click Me</button>
  
  <div id="myData"></div>
    
</body>
</html>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM