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
──────────────────────────────────────────────────
- 출처 : 네이버 지식인 -