Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
D3.js 如何通过JavaScript将参数从D3的.js文件传递到Arcgis Api的.js文件?_D3.js_Arcgis Js Api - Fatal编程技术网

D3.js 如何通过JavaScript将参数从D3的.js文件传递到Arcgis Api的.js文件?

D3.js 如何通过JavaScript将参数从D3的.js文件传递到Arcgis Api的.js文件?,d3.js,arcgis-js-api,D3.js,Arcgis Js Api,我使用D3和ArcGIS API 3.19开发了一个交互式Web var timeinterval =geo; var locationURL="https://paleobiodb.org/data1.2/colls/list.json?lngmin=-125&lngmax=-60&latmin=25&latmax=50&limit=all&show=time&level=3"; locationURL += "&

我使用D3和ArcGIS API 3.19开发了一个交互式Web

    var timeinterval =geo;
    var locationURL="https://paleobiodb.org/data1.2/colls/list.json?lngmin=-125&lngmax=-60&latmin=25&latmax=50&limit=all&show=time&level=3";
    locationURL += "&"+"interval="+timeinterval;
在D3的
.js
文件中,我使用双击来获取
d.name

var g=svg.selectAll("g")
        .data(partition.nodes(root))
         .enter().append("svg:g")
        .on("click", clicked)
        .on("dblclick",TransInterval);
函数TransInterval
中,第一个
控制台.log()
可以获得输出,但第二个什么也得不到

var geo;//the global variable
function TransInterval(d){
   var wa= d.name;
   geo=wa;
   console.log(geo);
   return geo;
    };
   console.log(geo);

因此,我想知道如何将
d.name
传递给全局变量,并且可以在ArcGis API的
.js
文件中使用?谢谢大家!

我认为您编写代码的方式没有任何问题。调用函数
TransInterval
时,将
d.name
中的值分配给变量
geo


关于JavaScript,您需要了解的是,变量是函数范围的。因此,在执行第二个<代码>控制台.log(GEO)< /代码>时,函数<代码> TransInterval < /代码>可能不被调用。

您认为第一个是代码>控制台。()(代码)>代码>,在函数内或外部。<代码>控制台。日志()/代码>函数内是第一个。我通过代码>控制台检查执行顺序。log(1)和
控制台日志(2)
。首先执行外部命令。谢谢你的回答。很高兴我能帮忙。接受答案,这样会帮助别人。