2013-12-19 2 views
0

다소 바보입니다. 여기서는 구문 오류를 찾을 수 없지만 크롬 디버거는 2 행에서 "예상치 못한 입력"이 발생한다고 알려줍니다. 누구나 아이디어가 있습니까?JSLInt를 넘긴데도 예기치 않은 입력이 있습니다.

$("head meta").each(function() { 
    var content = JSON.parse(this.content); 
    if (content.hasOwnProperty("bitpenny")) { 
     checkWhiteList(window.location.hostname, function (isIn, entry) { 
      if (!isIn) { 
       checkBlackList(window.location.hostname, function (isIn) { 
        if (!isIn) { 
         askUser(content, window.location.hostname); 
        } 
       }); 
      } 
     }); 
    } 
}); 
+3

오류 인상처럼 보인다 구문 분석 할 수 없습니다와 같은 실패 'JSON.parse' 함수 안에 있습니다. JSON이 유효합니까? 'this.content' 콘텐츠를 제공 할 수 있습니까? – antyrat

+0

'head meta'에서 JSON으로 기대되는 요소는 무엇입니까? 둘 중 하나라도 그렇지 않으면 오류가 발생합니다. [try..catch] (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/try...catch)는 여기에서 유용 할 수 있습니다. – Blazemonger

+0

당신 말이 맞아요. 나는이 가능성을 고려했다. this.content는 빈 문자열 ""이었습니다. 나는 방금 이것이 유효한 json도 아니다는 것을 깨달았다. –

답변

4

어떤 문자열을 JSON으로 구문 분석 할 수 있다고 생각하십니까?

var content = JSON.parse('text/html; charset=UTF-8'); 

가해야하고, 콘텐츠 메타 태그의 텍스트의로 this.content이 비슷한을 반환합니다, 당신은 JSON으로

+0

당신 말이 맞아요. 코드를 JSON.parse ("")로 변경하여이 가능성을 확인했습니다. 방금 Json이 아니라고 깨달았습니다. –

관련 문제