繁体   English   中英

获取在 API 调用中声明的变量(函数中的函数中的 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

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

我已经查看并看到了不同的迭代,但没有任何效果。 在这种情况下,我想要的变量在函数内的函数内的 for 循环中。 我试过先声明变量,然后在函数中定义它们。 我已经尝试在它们内部调用函数以尝试在函数之外检索它,等等。

期望的结果:我只想在我在函数中创建的函数之外调用变量“FIRM”(这样我就可以使变量成为全局变量)。 或者我只是希望将变量 FIRM 创建为全局变量本身。

这非常令人困惑,因为当我也在自身之外尝试 GetData() 以获取变量时,无法识别该函数。

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>
问题暂未有回复.您可以查看右边的相关问题.
3 声明一个全局变量,或在每个类中声明多次

简单的问题。 回顾我的代码,我注意到在我的类或方法中我已经多次声明了很多变量...例如: 和 这让我想到,而不是声明“dateformat”,“sdf”,或“timeformat”或我在多个地方使用的其他人,在我的应用程序类中声明这些全局变量对我来说没有意义,然后在任何地方引用 ...

6 如何将AVAudioRecorder声明为全局变量

我正在努力理解为什么我不能将这里看到的记录器变量声明为可用于该类中的任何操作。 编辑以完整显示一个新的测试项目,但仍显示相同的行为。 我只是似乎无法全局声明记录器var。 看评论 : ...

7 为什么必须将全局变量声明为指针?

当编译我的C ++程序时,我没有收到任何错误,但是在unordered_map中,哈希函数失败,尝试将其修改为0。(stl的hashtable_policy.h的345行) 我已经找到了解决方法,但是不知道为什么我要从一开始就遇到问题。 我的结构看起来像这样,(对不起特定的代码。) ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2022 STACKOOM.COM