2016-08-27 2 views
-7

두 개의 json 양식이 있습니다. jsonlint에서 유효성 검사를 시도했습니다. 먼저 오류를 표시하고 두 번째 JSON에 대해 유효성을 검사합니다.사각형과 중괄호로 시작하는 사이에 유효한 양식은 무엇입니까?

잘못된 JSON :

  1. [ "name": {} ]

진정한 JSON :

  • { "name": {} }
  • 어느 한 이유는 첫 번째 설명 할 수

      두 번째 것은 사실이지만 잘못된 것입니다.

    +0

    * 왜 처음 하나가 틀린 지 구분할 수 있습니다. * 아무 것도 의미하지 않고 그 스펙과 일치하지 않기 때문에. 문자 위치 정보를보고하는 유효성 검사기/구문 분석기를 사용했다면 콜론 위치에 오류가보고됩니다. –

    답변

    3

    [배열 초기화 프로그램을 시작합니다. 유효한 항목은 주석으로 구분 된 값입니다. 예 :

    ["one", 2, "three"] 
    

    {객체 이니셜를 시작합니다. 유효한 항목은 이름/값 쌍입니다. 각 쌍은 큰 따옴표로 묶인 이름이며 콜론 (:) 다음에 유효한 값이옵니다. 예를 들면 :

    {"name": "value"} 
    
    {"name": {}} 
    
    {"name": ["one", 2, "three"]} 
    

    이 모든 the websitethe standard이 적용됩니다.

    값이 예상되는 (배열 항목에서) 이름/값 쌍을 정의하려고하므로 첫 번째 예가 유효하지 않습니다.

    +0

    은 yout 마지막 행을 의미합니다. [ "name": ""], 유효한 json입니까? – Vasant

    +0

    @Vasant : 아니에요. –

    +0

    DV는 아니지만 사양을 다시 읽으라고 사람에게 알리는 의견을 남기면 문제가되지 않습니까? –