JavaScript基础

2021-03-06  本文已影响0人  北雁南飞_8854

访问描述符(accessor properties)Getter和Setter

let user = {
  name: "John",
  surname: "Smith",
  get fullName() {
    return `${this.name} ${this.surname}`;
  },
  set fullName(value) {
    [this.name, this.surname] = value.split(" ");
  }
};

// set fullName is executed with the given value.
user.fullName = "Alice Cooper";

alert(user.name); // Alice
alert(user.surname); // Cooper

一个属性要么是访问属性(accessor property),要么是数据属性(data),只能是两者之一。

Object.defineProperty(user,
       "firstName",
       {
          get: function() {
            return this.name;
          },
          //是否可以枚举
          enumerable: true
       }
);
上一篇 下一篇

猜你喜欢

热点阅读