javascript
  • json
  • string
  • parsing
  • 2016-12-07 2 views -1 likes 
    -1

    내가 자바 스크립트에 다음 JSON을 구문 분석하려고이 JSON을 구문 분석하지만, 위의 JSON에 JSON.parse를 사용는 자바 스크립트

    { 
        "outer":"{'inner':{'key':'value'}}" 
    } 
    

    성공하지 않은 것은 잘못된 구문 오류가 있습니다. 유효한 JSON인지 확인했습니다. 나는 무엇을 놓치고 있습니까?

    var json = '{"outer":"{'inner':{'key':'value'}}"}'; 
    JSON.parse(json); 
    

    이는 '내부'JSON

    +1

    우리를 표시합니다. JSON.parse ("{\"outer \ ": \"{ 'inner': { 'key': 'value'}} \ "}"); 에 대한. –

    +0

    http://jsbin.com/jibecet/1/edit?js,console - 테스트 할 때 오류없이 구문 분석합니다. – Quentin

    +1

    편집 할 필요가 있습니다 :'''inside' 이전에'''이 어떻게 있습니까? 그것은 당신이 당신의 끈을 닫고 있다는 것을 의미합니다. 당신은 그것을 벗어날 필요가 있습니다. '\ ''. –

    답변

    2

    문제에 예기치 않은 식별자를 제공합니다 (이것은 가지고 있지만 그 자체가 문제의) 당신의 JSON 없습니다.

    당신은 이미 그래서 당신이 그들을 탈출해야 ' 문자가 포함 ' 문자 만 로 포장하여 자바 스크립트 문자열로 변환하려고했습니다.

    var json = '{"outer":"{\'inner\':{\'key\':\'value\'}}"}'; 

    당신은 아마 그냥 객체 리터럴로 치료 나을 거라고 : 당신이 당신의 JSON과 당신이 기대를 구문 분석하는 방법

    var not_json = {"outer":"{'inner':{'key':'value'}}"}; 
    console.log(not_json); 
    
    +0

    내부 JSON을 문자열로 사용하고 싶지는 않습니다. 아마도 실수 일 겁니다. –

    +0

    감사합니다. 도움이 되셨습니까? 처음에 작은 따옴표를 큰 따옴표로 바꾸고 구문 분석해야한다고 생각합니다. –

    +0

    @user_mda하지만 JSON으로 구문 분석하면 아무 쓸모가 없습니다. 당신은 Quentin이 말한 것을 할 수도 있고 그것을 단지 대상으로 만들 수도 있습니다. –

    관련 문제