2017-11-13 21 views
0
name: string; 

constructor(private value: string) { 
    this.name = value; 
    // or 
    this.name = this.value; 
} 

이러한 옵션 중 더 나은 옵션은 다음 중 어느 것입니까? valuethis이라는 접두어를 붙이는 이유는 무엇입니까? 생성자의 매개 변수에 this 키워드를 사용하는 것이 맞습니까?생성자의 매개 변수에이 키워드 사용

저는 tsconfig와 tslint에서 noUnusedParameters, noUnusedLocals을 사용하여 프로그램에 사용되지 않는 변수가 없는지 확인했습니다. 불행히도 tslint는 앞에 this이 없으면 생성자의 매개 변수를보고합니다 (사용되지 않은 것으로 표시되는 것은 이상합니다).

+0

'this.value'가'정의되지 않았습니까? ' – evolutionxbox

+0

정말입니까? http://jsbin.com/natamanuta/edit?js,console – evolutionxbox

+0

@evolutionxbox 귀하의 jsbin 링크는 javascript입니다. 질문은 타이프 스크립트에 관해 묻습니다. 'private' 키워드를 보시오. 모든 차이를 만듭니다. – Duncan

답변

1

this.value은 액세스 수정자를 private value: string으로 생성자에서 선언 할 때 지정하기 때문에 this.value을 사용할 수 있습니다.

value을 다른 기능으로 사용하지 않으려는 경우, 그것을주고 액세스 한정자를 사용하지 않고 그냥 주입하는 것이 좋습니다.

name: string; 

constructor(value: string) { 
    this.name = value; 
}