지도/로컬 API에 대한 문의게시판입니다.
카카오api로 작성한 코드인데
불러오는 데이터에 경도 위도 값이 문자열로 저장돼있어서 오류가나는것같은데 어떻게 고칠수있는지 아시는분있나요?
코드
const url = "https://apis.data.go.kr/B552061/roadDgdgrHighway/getRestRoadDgdgrHighway?serviceKey=(서비스키는입력했습니다)";
// 인포윈도우 표시 열기
function mouseOverListener(map, marker, infoWindow) {
return function () {
infoWindow.open(map, marker);
};
}
// 인포윈도우 표시 닫기
function mouseOutListener(infoWindow) {
return function () {
infoWindow.close();
};
}
var mapContainer = document.getElementById("map"); // 지도를 표시할 div
var mapOption = {
center: new kakao.maps.LatLng(35.13417, 129.11397), // 지도의 중심좌표
level: 7, // 지도의 확대 레벨
};
var map = new kakao.maps.Map(mapContainer, mapOption);
var clusterer = new kakao.maps.MarkerClusterer({
map: map, // 마커들을 클러스터로 관리하고 표시할 지도 객체
averageCenter: true, // 클러스터에 포함된 마커들의 평균 위치를 클러스터 마커 위치로 설정
minLevel: 5, // 클러스터 할 최소 지도 레벨
});
const config = {
headers: {
'Accept' : 'application/json'
}
}
fetch(url, config)
.then((res) => res.json())
.then((resJson) => {
var markers = [];
// 졸음 센터 좌표 리스트
var centers = resJson.data;
for (var i = 0; i < centers.length; i++) {
var lat = centers[i]["구간좌표".subset(0, 17)];
var lng = centers[i]["구간좌표".subset(18, 35)];
var marker = new kakao.maps.Marker({
position: new kakao.maps.LatLng(lat, lng),
map: map,
});
var infoWindow = new kakao.maps.InfoWindow({
content: centers[i]["도로위험도등급"],
});
// 마커 추가
markers.push(marker);
// 마커 이벤트리스너 등록
kakao.maps.event.addListener(marker, "mouseover", mouseOverListener(map, marker, infoWindow));
kakao.maps.event.addListener(marker, "mouseout", mouseOutListener(infoWindow));
}
clusterer.addMarkers(markers);
});