Programing

JSLint가 밑줄 접두사가 붙은 변수 이름에 "예기치 않은 매달려"문자를보고합니다.

lottogame 2020. 10. 24. 09:23
반응형

JSLint가 밑줄 접두사가 붙은 변수 이름에 "예기치 않은 매달려"문자를보고합니다.


어떤 사람들은 변수가 "개인"이라는 것을 암시하기 위해 선행 밑줄의 존재를 고려하고 그러한 프라이버시가 허구이며 이것이 JSLint가 오류 메시지와 함께 그러한 이름을보고하는 이유라고 가정한다는 것을 알고 있습니다.

현재 구축중인 웹 사이트에서 Google Analytics를 사용합니다. "_gaq"와 같은 GA의 변수를 참조합니다.

내 JS 코드를 100 % JSLint 깨끗하게 만들려고합니다 (저는 코딩 스타일에 대해 종교적이지 않으므로 Crockford 씨의 조언을 따르겠습니다). 즉, Google의 변수 이름에 대해 아무것도 할 수 없습니다. 그래서 100 % "깨끗한"상태를 얻을 수는 없습니다.

나는 메시지를 오해하고 JSLint 관행을 준수하기 위해 무언가를 할 수있는 경우를 대비하여 여기에 게시합니다.


아, 이걸 처리했습니다 ... JSLint 명령으로 밑줄 접두사 변수를 사용하는 문을 래핑하여 비활성화 한 다음이 오류 클래스를 다시 활성화합니다.

/*jslint nomen: true*/
... statement(s) with _var ...
/*jslint nomen: false*/

이를 처리하는 가장 좋은 방법은 "식별자에 댕글 링 _ 허용"(명칭) 옵션을 활성화하는 것입니다. 자세한 내용은 http://www.jslint.com/lint.html 을 참조하십시오 ...


JSLint는 코드 품질 도구 일뿐입니다. 테스트를 완전히 통과하지 못한다고해서 코드가 나쁘다는 의미는 아닙니다. 이는 단순히 제작자가 정한 모든 규칙을 따르지 않는다는 것을 의미합니다. JSLint가 매우 좋은 제안을하지만, 특히 테스트를 거치지 않은 다른 사람의 라이브러리를 사용할 때 항상 모든 것을 이행 할 수있는 것은 아닙니다. 의미없는 메타 주석으로 소스 코드를 흩 뿌리기보다는 "Disallow dangling _ in identifiers"옵션이 비활성화 된 상태에서 코드를 확인해야합니다. 특정 코드와 함께 사용하는 것이 합리적이지 않은 것 같습니다.


Node.js와 함께 JSLInt를 사용합니다. --nomen 플래그를 전달하여이 기능을 사용할 수 있습니다.

jslint --nomen myfile.js 

참고 URL : https://stackoverflow.com/questions/3039587/jslint-reports-unexpected-dangling-character-in-an-underscore-prefixed-variabl

반응형