본문 바로가기
JAVASCRIPT/AJAX-JSON 응답위한 eval()

AJAX의 JSON 응답을 위한 eval()

by 정윤재 2008. 11. 5.

eval() 함수의 사용 목적은 객체를 만들기 위함이고, joson응답 또한 객체로 만들어 사용합니다.

 joson응답을 객체로 만들 때 eval함수에서 발생하는 invalid label error 때문에 괄호가 필요합니다.
이유는 eval이 처음 만나는 : 이거 전까지를 label로 해석하기 때문입니다.


label :
  statement
 이런 구조로 해석하기 때문에 문제가 발생합니다.


 그러므로 ( )를 넣어주어 label로 해석되는 문제를 해결할 수 있습니다.
 var s = eval("({'a':1, 'b':2, 'c':3})");

 

 

[참고 사이트] : http://willcode4beer.com/tips.jsp?set=jsonInvalidLabel

 

──────────────────────────────────────────────────

 [예 제-1]
<html>
<body>
<script type="text/javascript">
 <!--
  var s = eval("({'a':1, 'b':2, 'c':3})");
   alert(s.a);
 //-->
 </script>
</body>
</html>


댓글