나는 다음과 같은 구조를 구축하는 루프에 푸시() 메소드를 얻기 위해 노력했습니다는 :것은
var locations = [];
$.ajax({
type: "POST",
url: "/ajax/map.php",
data: "name=test",
dataType: "json",
cache: false,
success: function(data){
$.each(data.points, function(i,item){
array_push = ["test", parseFloat(item.origem_lat), parseFloat(item.origem_lng), i];
locations.push(array_push);
});
}
});
:
var locations2 = [
['User', position.coords.latitude, position.coords.longitude, 1],
['Bondi Beach', -33.890542, 151.274856, 2],
['Coogee Beach', -33.923036, 151.259052, 3],
['Cronulla Beach', -34.028249, 151.157507, 4],
['Manly Beach', -33.80010128657071, 151.28747820854187, 5],
['Maroubra Beach', -33.950198, 151.259302, 6]
];
이 내 코드입니다
그러나 위치에 대한 Javascript console.log에는 빈 배열이 표시됩니다.
많은 다른 방법으로 push()를 사용하려고했지만 locations2와 같은 구조를 얻을 수 없습니다. 여기서 가장 큰 문제는 루프 앞에 위치 배열 안에 얼마나 많은 배열이 있는지 모르기 때문에 사전에 초기화 할 수 없다는 것입니다.
의견이 있으십니까?
올바른 구문입니다. 'data.points'에는 예상 한 배열이 포함되어 있습니까? – McGarnagle
ajax 호출에 오류 콜백을 추가하십시오. 오류가 발생할 수 있지만이 코드를 알지 못할 수 있습니다. –
alert (JSON.stringify (x))를 사용하여 배열 내용을 빠르게 덤프 할 수 있습니다. 여기서 x는 문제의 배열입니다. – RonaldBarzell