source

JavaScript 오류(Uncatched SyntaxError:예기치 않은 입력 종료)

gigabyte 2023. 1. 12. 22:06
반응형

JavaScript 오류(Uncatched SyntaxError:예기치 않은 입력 종료)

FireFox에서는 동작하지만 Chrome이나 IE에서는 동작하지 않는 JavaScript 코드가 있습니다.

Chrome JS 콘솔에서 다음 오류가 나타납니다.

"Uncatched SyntaxError:예기치 않은 입력 종료."

사용하고 있는 JavaScript 코드는 다음과 같습니다.

<script>
 $(function() {
 $("#mewlyDiagnosed").hover(function() {
    $("#mewlyDiagnosed").animate({'height': '237px', 'top': "-75px"});
 }, function() {
    $("#mewlyDiagnosed").animate({'height': '162px', 'top': "0px"});
 });
</script>

에러가 마지막 줄에 있다고 되어 있습니다.});

1초 추가});.

올바르게 들여쓰면 코드가 읽힙니다.

$(function() {
    $("#mewlyDiagnosed").hover(function() {
        $("#mewlyDiagnosed").animate({'height': '237px', 'top': "-75px"});
    }, function() {
        $("#mewlyDiagnosed").animate({'height': '162px', 'top': "0px"});
    });
MISSING!

넌 절대 외부를 닫지 않았어$(function() {.

제 경우 빈 JSON을 해석하려고 했습니다.

JSON.parse(stringifiedJSON);

즉, 다음과 같은 일이 발생했습니다.

JSON.parse("");

http://jsbeautifier.org/ 는, 최소화된 JS 코드를 식별하는데 도움이 됩니다.

또, Google Chrome에서는, 「예쁜 프린트」를 사용할 수 있습니다.다음 스크린샷 예를 참조하십시오.jquery.min.js스택 오버플로우에서 내 브라우저에서 바로 들여쓰기:)

여기에 이미지 설명 입력

코드 포맷을 조금만 하면 내부 호버 기능만 닫힙니다.아래 표시된 외부 부품을 닫지 않았습니다.

$(// missing closing)
 function() { // missing closing }
     $("#mewlyDiagnosed").hover(
        function() {
            $("#mewlyDiagnosed").animate({'height': '237px', 'top': "-75px"});
        }, 
        function() {
            $("#mewlyDiagnosed").animate({'height': '162px', 'top': "0px"});
        });

제 경우엔, 실종이 원인이었어요(0)javascript:void(0)닻을 내리고

제 경우 북마크릿에서는 단순한 이중 따옴표 문제가 되었습니다. 북마크릿에서는 작은 따옴표만 사용합니다.혹시 이게 도움이 될까봐.

이 에러는 빈 JSON을 해석하려고 할 때 빈 Ajax 콜이 반환되는 것이 주된 원인입니다.

반환된 데이터가 비어 있는 경우 이 테스트를 해결하려면

$.ajax({
    url: url,
    type: "get",
    dataType: "json",
    success: function (response) {

        if(response.data.length == 0){
            // EMPTY
        }else{
            var obj =jQuery.parseJSON(response.data);
            console.log(obj);
        }
    }
});

javascript bookmarklet을 작성하려고 할 때 이 오류가 발생하였습니다.원인이 무엇인지 알 수 없었습니다.그러나 결국 http://mrcoles.com/bookmarklet/ 웹사이트에서 URL 인코딩을 시도했는데 오류가 사라졌기 때문에 자바스크립트 코드의 특정 문자가 특수 URL 제어 문자로 해석되는 데 문제가 있었던 것 같습니다.

JS에 추가하고 있던 파일에 코멘트가 있었기 때문에, 이 코멘트를 취득했습니다.무슨 일이 일어나고 있는지는 매우 난처한 이유입니다.VM파일을 미리 렌더링하여 오류를 발견하면 정확히 어떤 오류가 발생했는지 알 수 있습니다. 제 경우에는 단순히 제가 사용하던 코드의 코멘트를 해제한 것입니다.

또, 페이지의 마지막 스크립트 블록의 끝을 가리키고 있는 이 에러도 표시되지만, 실제로는 에러가 있는 요소를 클릭했을 때에 발생한 것을 알 수 있습니다.onclick="pagename"onclick="window.location='pagename'"!!괄!!!!!!!!!!!!

어플리케이션의 javascript 오류/타이핑 오류일 수 있습니다.파일 내용을 하나씩 삭제하려다 결국 입력 오류를 발견했습니다.

언급URL : https://stackoverflow.com/questions/3983088/javascript-error-uncaught-syntaxerror-unexpected-end-of-input

반응형