在JavaScript中,get和set关键字用于定义访问器属性。访问器属性使用getter和setter方法来定义如何访问和修改属性。
get关键字定义了一个getter方法,一个在访问属性时调用的函数。getter方法通常返回属性的值。
set关键字定义了一个setter方法,一个在修改属性时调用的函数。setter方法通常使用传递给它的值更新属性的值。
访问器属性使用Object.defineProperty()方法定义,并由get和set关键字表示。
以下是如何定义访问器属性的示例:
let person = {
_name: "John",
get name() {
return this._name;
},
set name(value) {
this._name = value;
}
};
console.log(person.name); // Output: "John" (invokes the getter method)
person.name = "Jane"; // invokes the setter method
console.log(person.name); // Output: "Jane"
在此示例中,name属性被定义为具有返回name属性值的getter方法和更新name属性值的setter方法的访问器属性。