2014-02-18 5 views
0

JSON 문자열을 JSON 객체로 변환하는 데 도움이 필요합니다.동적 문자열을 JSON 객체로 변환

var myString= "{ title: 'mySchema'," + "root: {id:'" + var1 + "'," + "title:'" + var2 + "'," + "subtitle:'" + var3 + "',"; 
childrenVar = myString + "{ id: '" + var1 + "'," + "title: '" + var2 + "'," + "subtitle: '" + var3 + "'," + "type: '" + var4 + "'"; 

myString= getChildNodes(tasksEntries, head, liststring); 
myString= myString + "},";} 
myString= myString+ "]}}"; } 
myString= childrenVar; 
myString= childrenVar; 
JSON.stringify(myString); 
$.parseJSON(myString); 

이이 내가 디버깅 할 때 myString 출력 : 가 여기 내 변수

{title: 'mySchema', 
root: { 
    id:'1', 
    title:'oOB', 
    subtitle:'Hang Chaw', 
    children: [ 
     { 
     id: '2', 
     title: 'OaK', 
     subtitle: 'Ke Man', 
     type: 'VA' 
     }, 
     { 
     id: '3', 
     title: 'OOB', 
     subtitle: 'Hung Aslew', 
     type: 'VA' 
     }, 
    ] 
    } 
}; 
+0

이 줄의 의미 ..... myString = myString + "]}}"; } myString = childrenVar; 당신은 myString 값을 오버라이드하고 있습니다 ..... 그냥 적절한 문자열을 만들고 {var obj = JSON.parse (myString)}을 수행하십시오. – Piyuesh

+0

@Piyuesh'myString = myString + "]}};'는 연결 구문입니다. – Bic

+0

이 코드로 무엇을 얻으려고하는지 명확히 알지 못합니다. 객체에서 JSON을 만들려고합니까? JSON에서 객체를 만드시겠습니까? 두 경우 모두 문자열 처리가 필요하지 않습니다. 올바른 용어를 사용하여 귀하의 질문을 명확히하십시오 .JSON 문자열 "JSON 포함 문자열을 의미하고"JSON 개체 "JavaScript 개체에 의해 가정합니다. –

답변

0

가까이 배열 전에 마지막 쉼표를 제거합니다().

0

개체 키 주변에는 따옴표가 필요합니다. 적절한 JSON 문자열은 아래 문자열과 유사합니다. jQuery.parseJSON.

다음은 Fiddle의 예입니다. 여기서 문자열은 개체로 변환 된 다음 콘솔에 기록됩니다.

var myString = '{"title": "mySchema","root": {"id":"1","title":"oOB","subtitle":"Hang Chaw","children": [{ "id": "2","title": "OaK","subtitle": "Ke Man","type": "VA"},{ "id": "3","title": "OOB","subtitle": "Hung Aslew","type": "VA"}]}}'; 

여기에는 JSON.parse를 사용하여 동일하게 Fiddle입니다. 최신 버전의 JavaScript는 기본적으로 JSON을 지원합니다. jQuery 만 사용하여 JSON 문자열을 파싱하는 경우 JSON.parse를 사용해야하며 jQuery 라이브러리는 포함하지 않아야합니다.

+0

jQuery.parseJSON 대신 JSON.parse 사용 –

+0

@FUserThrowError OP 예를 들어 $ .parseJSON을 사용했기 때문에 JSON.parse와 $ .parseJSON은 같은 결과를 낳습니다. – Bic

관련 문제