javascript에서이 논리 부분을 디버깅하는 데 도움이 필요합니다. 내 변수 값을 확인하기 위해 하드 중단 점을 설정했지만 배열에 내 변수를 다시 보낼 수는 없습니다. 원본 및 대상. 두 배열은 조인 된 long long 값의 컬렉션입니다. TSV는 각자 long long으로 세분화 된 두 점의 행으로, 각 행을 한 쌍으로 다시 합친 다음 원래의 배열과 대상 배열로 밀어 넣습니다.배열로 요소 밀어 넣기
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)
UPDATE :
다음은 문제의 배열 부분을 밀어 해결되었다. 그것은 문법 실수였습니다.
아직도 처리되지 않는 형식 오류 점점 : 코드를 보면이 아닌 객체
나는 원산지가 정의되지 않았습니다. –
@m_callens \t 그리고 오타를 수정하십시오. 함수 내에서 오류가 발생했습니다. IIFE가 올바른지 아닌지에 관계없이 여전히 존재하는 변수를 사용해야합니다. –
왜 이러는거야? 'd3.tsv'는 객체의 배열을 제공합니다. 각 객체는 TSV의 첫 번째 줄을 기반으로하는 키와 다른 줄을 기반으로 한 값을 갖습니다. TSV에 정확한 위도와 경도가 포함되어 있다면이 모든 수학이 필요하지 않습니다. –