[JavaScript] Privacy
하우즛 고잉 가이스? 동기 여러분! 오늘은 Privacy에 대해 알아볼 건데 이것은 기능이라기 보단 관습? 관례? 같은 개발자들 간에 약속입니다. 그러면 가보도록 하죠 갑시다!
Privacy
동아출판의 영어사전에 Privacy를 찾아보면
링크 : https://en.dict.naver.com/#/entry/enko/5d76e60c545b419798d447c5ca6e7d01
- (남의 간섭을 받지 않는 개인의)사생활; 사적[개인적]자유, 프라이버시
- 남의 눈을 피함, 은거, 은둔, 은퇴 생활
- 비밀, 은밀, 비공개
- 은거처, 은둔소, 사람 눈에 띄지 않는 장소
라고 나옵니다.
객체(Object)에서 프로퍼티(Property)에 접근하고 업데이트를 당연한 일입니다. 하지만 개발자 인생을 살다가 보면 쉽고 간단하게 객체의 프로퍼티(Property)가 변하는 것을 원하지 않는 경우가 생길 수 있습니다. 자바스크립트에서는 특별히 지정해놓은 기능은 없고 개발자들 간에 약속 같은 형식으로 쓰는 방법이 있습니다.
_ 밑줄(underscore)을 프로퍼티(Property)의 이름 맨 앞에 붙이는 아주 쉽고 깔끔한 방법입니다.
생김새
// JavaScript
const jinRamenHot = {
_price : '550원',
_weight : '120g',
_kcal : '500kcal'
};
평범한 객체에 키값 바로 앞에 _ 밑줄(underscore)만 하나 추가했습니다.
하지만 여전히 이 객체(Object)의 프로퍼티(Property)들은 수정과 삭제가 가능합니다. 다만 _ 밑줄(underscore)이 붙어 있으면 개발자들이 이걸 보고 '아 이거 건들면 안 되겠는데?'라고 생각을 할 뿐.
검증
아래의 코드에서는 여전히 수정과 삭제가 가능한 프로퍼티(Property)의 모습을 보겠습니다.
오늘의 느낌
직장상사가 달아 놓은 _ (underscore)의 프로퍼티(Property)를 수정하거나 삭제하면 어떻게 될까 캬캬캬캬캬캬캬캬캬컄ㅋㅋㅋㅋㅋㅋㅋ