Uncaught SyntaxError: Unexpected token for 에러 질문입니다.
본문
안녕하세요 이제막 군대다녀온 사회 초년생 입니다.
그누보드의 datepicker 을 이용해 조회하고 싶은 날짜를 선택해 방문자의 숫자를
그래프로 보여주는 스킨을 만들고 있는데요
간단하게 설명드리자면
ajax를 이용해 g5_visit_sum 테이블의 vs_date값과 vs_count 값을 문자열로 받아와
str 이라는 변수에 배열로 집어넣었습니다
ex)
str[0] = 2017-05-01
str[1] = 50
str[2] = 2017-05-02
str[3] = 60
값이 정상적으로 들어가 있습니다.
실제로 str 의 값을 확인한 결과
잘 나오는 것 까지 확인하였습니다
문제는 차트로 표현하기 위해
dataProvider (차트에 x값과 y값의 데이터의 수치를 입력해주는 부분) 에서 오류가 발생한다고
나옵니다.
코드를 보면
<script>
function chart(data){
var str = data.split('///');
var size = str.length-3;
//alert(str +'/'+ size);
var chart = AmCharts.makeChart("chartdiv", {
"type": "serial",
"theme": "dark",
"dataDateFormat": "YYYY-MM-DD",
"dataProvider":[
for(var j=0;j<=size;j=j+2)
{
{
"date":str[j],
"value":str[j+1]
},
}
],
"valueAxes": [{
"maximum": 150,
"minimum": 0,
"axisAlpha": 0,
"guides": [{
"fillAlpha": 0.1,
"fillColor": "#CC0000",
"lineAlpha": 0,
"toValue": 120,
"value": 0
}, {
"fillAlpha": 0.1,
"fillColor": "#0000cc",
"lineAlpha": 0,
"toValue": 200,
"value": 120
}]
}],
"graphs": [{
"bullet": "round",
"dashLength": 4,
"valueField": "value"
}],
"chartCursor": {
"cursorAlpha": 0,
"zoomable":false,
"valueZoomable":true
},
"categoryField": "date",
"categoryAxis": {
"parseDates": true
},
"valueScrollbar":{
}
});
}
이부분이 데이터를 입력하는 부분입니다.
크롬 개발자도구를 본 결과 Uncaught SyntaxError: Unexpected token for 이라는
에러가 발생하구요
for문 을 가리키고 있습니다.
(size)는 for문을 깔끔하게 보여주기 위해 변수로 지정해 놓은것이구요 변수에대한 문제는 없는것
같습니다.
코딩 고수분들 도움을 부탁드립니다.
!-->
답변 2
배열에 for문을 넣으니 에러가 뜨는거죠. function으로 래핑해서 return시키는것도 아니구요.
(익명함수형태로 넣는것도 제가 보기엔 안될것같습니다)
비동기 문제라면 큐 이용해서 배열로 넣고 변경하시거나 PHP코드로 아예 자바스크립트와 섞어버리는걸 추천해요.
어떤식으로 코드가 짜여져있는지 모르겠는데, 자바스크립트 -> PHP는 불가능합니다.
PHP안에 코드 체크해보시고 변수명 불러올수있으면 변수에 맞춰서 ~~~ 안에 count(변수명) 넣어주심 될것같네요