Computer >> 컴퓨터 >  >> 프로그램 작성 >> JavaScript

JavaScript에서 getter와 setter의 차이점은 무엇입니까?

<시간/>

게터

속성에 액세스할 때 값은 암시적으로 함수를 호출하여 가져옵니다. get 키워드는 JavaScript에서 사용됩니다. 숫자 또는 문자열의 식별자를 설정할 수 있습니다.

세터

속성이 설정되면 암시적으로 함수를 호출하고 값이 인수로 전달됩니다. 이를 통해 반환 값은 속성 자체로 설정됩니다. set 키워드는 JavaScript에서 사용됩니다. 숫자 또는 문자열의 식별자를 설정할 수 있습니다.

예시

다음은 getter와 setter를 모두 구현하는 방법을 보여주는 예입니다.

라이브 데모

<html>
   <body>
      <script>
         var department = {
            deptName: "Finance",
            deptZone: "South",
            deptID: 105,
            get details() {
               return "Department Details<br>" + "Name: " + this.deptName + " <br>Zone: " + this.deptZone + "<br>ID: " + this.deptID;
            },
            set details(info) {
               var res = info.toString().split(' ');
               this.deptName = res[0] || '';
               this.deptZone = res[1] || '';
               this.deptID = res[2] || '';
            }
         }
         department.details = 'Marketing North 001';
         document.write(department.deptName);
         document.write(department.deptZone);
         document.write(department.deptID);
      </script>
   </body>
</html>