我需要帮助在javascript中调试这段逻辑,我设置了硬断点来检查我的变量的值,但是我无法将我的变量推回到数组:origin和destination。这两个数组只是连接的lat longs值的集合。我有一个TSV,它是一个分为两个点的行,它们分别被分解为它们的lat长度,我将每一个重新加入一对,然后将它推入我的源和目标数组。
output.tsv
的示例行Points 36.4535252345245 -122.3242534522 35.4535435435 -123.3342443545
代码:
var origins = [];
var destinations = [];
d3.tsv('output.tsv', function(data){
var json = JSON.stringify(data);
var i;
for(i=0; i<data.length; i++) {
var lat1, lat2, long1, long2;
var point1, point2;
lat1 = data[i].b; //value = 36.4535252345245
long1 = data[i].c; //value = -122.3242534522
lat2 = data[i].d; //value = 35.4535435435
long2 = data[i].e; //value = -123.3342443545
point1 = lat1 + ', ' + long1; //value = 36.4535252345245, -122.3242534522
point2 = lat2 + ', ' + long2; //value = 35.4535435435, -123.3342443545
origins.push(point1)
destinations.push(point2)
}
})(); -> ERROR : Uncaught TypeError: d3.tsv(...) is not a function(anonymous function)
更新:
解决问题的阵列部分已经解决了。这是一个语法错误。
仍然得到Uncaught TypeError:d3.tsv(...)不是函数(匿名函数)&amp;新错误InvalidValueError:不是对象
答案 0 :(得分:0)
查看你的代码。应该是......
origins.push(point1)
和destinations.push(point2)