안녕하세요.이 커뮤니티는 간단한 질문입니다.Js OOP : 클래스의 전용 변수
누군가가이 인쇄가 왜 '정의되지 않은'이유인지 알 수 있습니까? 내가 john.bankBalance 느릅 나무를 인쇄 할 마지막 줄에서
function Person(first,last,age) {
this.firstname = first;
this.lastname = last;
this.age = age;
var bankBalance = 7500;
}
// create your Person
var john = new Person ('John','Doe',33);
// try to print his bankBalance
document.write (john.bankBalance);
는 7500 개 감사합니다!
- : 우리가 그들을 제거하는 추가 시설, 설비를 줄 수 있으며 그들은 단지 짝수 인덱스를 볼 수 있도록 우리가 배열을 조작 개발자를하지 않을 수 있습니다 아래의 예에서 'bankBalance' 속성을 가지고 있습니다. 자바 스크립트의 범위 지정 규칙 때문에 생성자 함수'Person'의 변수'bankBalance'를 사용할 수 없습니다. 또한 JS에는 개인 속성에 대한 언어 지원이 없습니다. 하지만 클로저를 사용하여이를 시뮬레이션 할 수 있습니다. –
초보자는 JS에 "클래스"가 없다는 것을 명심해야합니다. 대신 JS는 프로토 타입을 사용합니다. 당신이'var bankBalance'를 할 때, 그것은 멤버 속성을 선언하는 자바와 같지 않고 지역 변수만을 정의합니다. 프로퍼티를 추가하려면 인스턴스의 속성 ('this.bankBalance')을 실제로 변경하거나 프로토 타입 ('Person.prototype.bankBalance = 7500')을 통해 변경해야합니다. –
감사합니다. Js가 작동하는 방식을 조금 알았습니다. –