다음과 같은 class를 예를 들어 보겠다.
class Newes {
count = 0;
text = 'ES2022';
exam(el){
console.log(el)
}
useExample() {
this.exam('non-private')
}
}
해당코드는
다음과 같이 직접적으로 호출이 가능하게 된다.
이렇게 되면 만약 count의 갯수나 메서드를 보호하지 못하게 된다.
이럴때 es2022문법으로 간단히 보호하는 방법이 있는데,
class Newes {
#count = 0;
text = 'ES2022';
exam(el){
console.log(el)
}
#useExample() {
this.exam('non-private')
}
}
바로 보호하고자 하는 함수나 변수 앞에 '#'을 지정해 주는것
그러면 이와 같이 직접적인 호출이 불가능 하게된다. (함수도 동일)
물론 class 안에서만 가능!