如何在 JavaScript 中定义 getter 和 setter 函数?


Getter

当访问属性时,将通过隐式调用函数来获取值。JavaScript 中使用了 get 关键字。set 允许使用标识符、数字或字符串。

Setter

当设置属性时,将隐式地调用一个函数,并将值作为参数传递。使用该值将返回值设置为属性本身。JavaScript 中使用了 set 关键字。set 允许使用标识符、数字或字符串。

范例

以下是一个展示如何实现 getter 和 setter 的范例。

线上范例

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

更新于: 2020 年 6 月 16 日

250 次浏览

开启你的 职业生涯

完成此课程,获得认证

开始
广告