전역 "this" 개체를 사용하면 안 됩니다.

반응형

키워드 this가 객체 외부에서 사용되면 전역 this 객체를 참조하며 이는 표준 웹 페이지의 창 객체와 동일합니다. 이러한 사용은 관리자에게 혼란을 줄 수 있습니다. 대신, 간단히 this를 삭제하거나 window로 바꾸세요. 동일한 효과를 가지며 더 읽기 쉽습니다.

나쁜 예:

this.foo = 1;   // Noncompliant
console.log(this.foo); // Noncompliant

function MyObj() {
  this.foo = 1; // Compliant
}

MyObj.func1 = function() {
  if (this.foo == 1) { // Compliant
    // ...
  }
}

좋은 예:

foo = 1;
console.log(foo);

function MyObj() {
  this.foo = 1;
}

MyObj.func1 = function() {
  if (this.foo == 1) {
    // ...
  }
}
반응형