삭제에도 불구하고 단지 게터을 가지고 속성을 설정할 수 없습니다 나는 내 클래스 중 하나에서 다음 게터 있습니다자바 스크립트 나 게터
get password(){
if(this._public) return null;
var text = "";
var possible = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
for (var i = 0; i < 10; i++) {
text += possible.charAt(Math.floor(Math.random() * possible.length));
}
delete this.password;
return this.password = text;
}
더 첨부 세터가 없습니다합니다. 라인 return this.password = text
에 나는이 오류를 얻을 :
Uncaught TypeError: Cannot set property password of # which has only a getter
그러나, 게터가이 시점에서 삭제되어야한다, 그리고 암호라는 프로퍼티가 없어야한다. 실제로 MDN의 페이지 here (페이지의 마지막 코드 스 니펫)에서 아이디어를 얻었습니다.
왜 이런 일이 발생하는지 알고 계십니까?
Chrome 51 및 Node.js (v6.0.0)에서 테스트되었습니다.
글쎄, 당신은 바로 뭔가를 설정할 수 없습니다? 나는 그것을 실제로 설정하는 세터가 필요하다는 것이 꽤 분명하다고 생각한다. – Darkrifts
@Darkrifts : 이것은 Ruby가 아니다. 속성은 데이터 속성 또는 접근 자 속성 중 하나 일 수 있습니다. 내가 올바르게 이해하면, OP는 접근 자 속성을 지우려고하므로 데이터 속성을 대신 넣을 수 있습니다. – Amadan
비밀번호는 어떻게 수업에 저장됩니까? this._password? – skyline3000