[JavaScript] eval 과 JSON =ㅁ=;;





'{ A: "AA", B: "BB" }'




위와 같은 스트링을 자바스크립트에서 객체화 하려면 어떻게 할까요?




var jsonStr = '{ A: "AA", B: "BB" }';



var obj = eval(jsonStr);




위와 같은 방식으로 하면 아래와 같은 오류가 발생합니다.





오류: "';'가 필요합니다."





음... -ㅁ-;;; 일단은 아래와 같이 땜빵을 하였습니다.




var jsonStr = '{ A: "AA", B: "BB" }';



eval('var obj = ' + jsonStr + ';');






ExtJS 라이브러리를 보니 JSON 스트링을 괄호로 감싸서 처리를 하네요...




var jsonStr = '{ A: "AA", B: "BB" }';



var obj = eval(




'('




+ jsonStr +




')'




);






캬캿 잘 됩니다.



댓글

가장 많이 본 글