首页 >web前端 >js教程 >什么是 Getter 和 Setter?何时应该使用它们?

什么是 Getter 和 Setter?何时应该使用它们?

Mary-Kate Olsen
Mary-Kate Olsen原创
2024-11-17 21:47:02770浏览

What are Getters and Setters and When Should You Use Them?

了解数据操作的 Getter 和 Setter

Getters 和 Setter 是面向对象编程中用于控制数据访问和操作的关键访问器方法在一个对象内。它们提供了一种检索和更新内部对象属性的受控方法。

Getters 和 Setters 的作用

  • Getters: 定义方法返回私有或受保护的值属性。
  • Setter: 定义一个允许将值分配给私有或受保护属性的方法。

何时使用 Getter 和Setter

强烈建议使用 getter 和 setter当:

  • 维护数据封装(保持属性私有或受保护)。
  • 在将数据分配给属性之前验证数据。
  • 访问之前或之后执行其他操作/修改属性。

简单示例

考虑 JavaScript 中的以下示例:

class Person {
  #firstName;
  #lastName;

  get fullName() {
    return `${this.#firstName} ${this.#lastName}`;
  }

  set fullName(name) {
    const [firstName, lastName] = name.split(" ");
    this.#firstName = firstName;
    this.#lastName = lastName;
  }
}

const person = new Person();
person.fullName = "John Doe";
console.log(person.fullName); // Output: "John Doe"

在此示例中:

  • getter fullName 返回全名(首先连接到姓氏)​​。
  • setter fullName 采用新的全名,将其分为名字和姓氏名称,并更新相应的私有属性。

其他注意事项

如示例所示,setter 还可以用于更新相关值。例如,如果您有生日属性,则可以使用 setter 来验证日期并执行与个人年龄相关的计算。

以上是什么是 Getter 和 Setter?何时应该使用它们?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn