문제

이 질문은 이미 있는 대답을 여기:

나는 디버깅하 JavaScript 가져오는 스크립트를 읽 Firefox extension 및 실행됩니다.나만 볼 수 있는 오류를 통해 방화 콘솔(내 코드는 보이지 않는 방화)및 그것의 보고는"종료되지 않은 문자열이다."

체크인 라인 주위에 모든 것이 잘 보인-괄호,괄호하고 따옴표는 균형 잡힌,etc.무엇이 다른 원인을 내가 찾고 계십니까?

도움이 되었습니까?

해결책

대부분의 브라우저는 다음과 같은 코드에 문제가있는 것 같습니다.

var foo = "</script>";

Firefox, Opera 및 IE8에서는 종결되지 않은 문자열 문자 오류가 발생합니다. 스크립트를 포함하는 HTML 코드를 직렬화 할 때는 매우 불쾌 할 수 있습니다.

다른 팁

라인 브레이크를 찾으십시오! 그것들은 종종 원인입니다.

"평판"이 있으면 Jamtoday의 답변에 투표 할 것입니다.

PHP를 통해 데이터가 나오면 도움이 될 수 있습니다.

$str = str_replace(array("\r", "\n"), '', $str);

방금 발견했습니다 "<\/script>" 뿐만 아니라 작동하는 것처럼 보입니다 "</scr"+"ipt>".

스크립트를 실행 해보겠습니다 jslint.

태그 폐쇄를 피하거나 ASCII 코드를 사용하십시오

<\/script>

<&#47;script>

컷/붙여 넣기를 한 경우 : 일부 온라인 구문 하이라이트는 단일 및 이중 인용문을 맹글하여 포맷 된 견적 쌍 (열린 개방 및 폐쇄 쌍)으로 바꿉니다. (지금은 예제도 찾을 수 없습니다) ... 그래서 명령을 몇 번이나 치는 것을 수반하고 인용 문자를 쳐다 보는 것입니다.

시도해보십시오 다른 글꼴? 또한 다른 편집자와 IDE는 다른 토큰 화제와 강조 규칙을 사용하며 JS는 구문 분석하는 더 역동적 인 언어 중 하나이므로 EMACS, VIM, GEDIT (JS 플러그인 포함)에서 파일을 열어보십시오. 파일 끝을 통해 실행되는 긴 자주색 문자열이 표시됩니다.

일부 서버 사이드 코드에 삽입 될 수있는 에스카로운 단일 Qoute가 포함 된 문자열을 찾으십시오.

앞으로 슬래시 ( /)를 탈출 했습니까? 나는 이전에 문제가 있었다

당신은 시도 했습니까? 크롬 버그? 확장을위한 소방구입니다.

나는 과거에 각진 인용구에 문제가 있었고 ( ') 보통 사본과 단어로부터 붙여 넣기에서 문제가있었습니다. 정기적 인 단일 따옴표 ( ')로 교체하면 트릭이됩니다.

또한 %0A는 인코딩 된 라인 피드 문자 URL입니다. 저의 불쾌한 코드에 라인 피드가있는 곳을 찾는 데 시간이 걸렸습니다.

도움이되지 않으면 유니 코드 문자를 찾으십시오.

\u2028

이것은 하나 이상의 줄에서 문자열을 끊고이 오류를 던질 수 있습니다.

아마도 PHP 코드에서 라인이 나올 수 있기 때문일 수 있습니다. 경고 창 메시지에 라인 브레이크가 필요한 경우 PHP 코드의 각 줄 끝에서 탈출 된 구문으로 포함하십시오. 나는 보통 다음과 같이합니다.

$message = 'line 1.\\n';
$message .= 'line 2.';

시"검색".삭제 절반 코드고 다시 시도하십시오.는 경우에 오류가,삭제 절반은 나머지 코드입니다.면 오류가 없다면,무엇을 넣어 당신을 삭제하시 및 삭제 절반습니다.반복합니다.

할 수 있는 좁은 그것을 선하게 해줍니다.내 경험있는 이 시점에서,당신은 몇 가지 바보가 잘못된 문자열입니다.

수도 있습리할 필요가 있을 수행하는 이에 저장된 버전의 HTML 을 출력하는 브라우저에,당신이 확실하지 않은 경우에는 서버의 측면 리소스에 오류가 있습니다.

웹 페이지 개발자는 뷰어의 브라우저에서 어떤 인코딩을 사용하는지 잘못 생각했습니다. 일반적으로 페이지 헤더에 인코딩을 지정하여 해결할 수 있습니다.

오는 코드를 스캔하십시오 ~ 전에 오류 메시지로 언급 한 줄#. 문명이없는 것이 무엇이든, 하류 (비난 줄#)가 플래그를 지정하게되었습니다.

공백은 내가 찾은 또 다른 문제 이며이 오류를 유발합니다. 함수를 사용하여 공백을 다듬는 것이 도움이 될 수 있습니다.

$ str. str_replace (배열 ( " r n", " n r", " r", " n"), ',', '
', StripsLashes ($ str));

이것은 작동해야합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top