안녕하세요 저는 3 개의 자바 스크립트 파일이 있습니다.
- jquery.js
- utility.js
- file1.js
file1.js에는
jQuery.noConflict()
jQuery(document).ready(function($) {
// ....
});
정의되기 전에 ‘jQuery’가 사용되었습니다. 정의되기 전에 ‘문서’가 사용되었습니다.
이 경고를 안전하게 제거하려면 어떻게해야합니까?
만약 내가한다면
var document = document || {};
그런 다음 내 utility.js에서 사용되는 경우 IE에서는 null이고 firefox에서는 괜찮습니다.
이것에 대한 최선의 해결책은 무엇입니까?
답변
에서 문서
JSLint는 또한이 파일에 사용 된 변수가 다른 파일에 정의되었음을 JSLint에 표시 할 수있는 / * global * / 지시문을 인식합니다. 주석에는 쉼표로 구분 된 이름 목록이 포함될 수 있습니다. 각 이름 뒤에는 선택적으로 콜론과 true 또는 false가 올 수 있습니다. true는 변수가이 파일에 할당 될 수 있음을 나타내고 false는 할당이 허용되지 않음을 나타냅니다 (기본값). 지시문은 기능 범위를 존중합니다.
일부 전역은 미리 정의 할 수 있습니다. 브라우저 (브라우저) 가정 옵션을 선택하여 문서 및 addEventListener와 같은 웹 브라우저에서 제공하는 표준 전역 속성을 미리 정의합니다.
예:
/*jslint browser: true*/
/*global $, jQuery*/
답변
Quentin이 말했듯이 /*global*/
지침이 있습니다.
다음은 예입니다 (파일 상단에 배치).
/*global var1,var2,var3,var4,var5*/
초기 전역 문이와 같은 줄에 있는지 확인하십시오 /*
. 그렇지 않으면 중단됩니다.