javascript - 属性访问是如何工作的,下面这行有什么作用?

标签 javascript arrays split

我在 JS 教程页面找到了以下代码,但我不确定它是做什么的以及它是如何工作的。你能解释一下它的用途和作用吗?

//来源是:https://javascript.info/property-accessors

let user = {
  name: "John",
  surname: "Smith",

  get fullName() {
    return `${this.name} ${this.surname}`;
  },

  set fullName(value) {
    [this.name, this.surname] = value.split(" "); <<<<<<<<<<<<<<<<<<<<<<<<<
  }
};
//set fullName 使用给定的值执行。
user.fullName = "Alice Cooper";

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

最佳答案

value.split创建一个包含两个元素的列表(在这种特殊情况下 "Alice Cooper" => ["Alice", "Cooper"] )并将元素解包到 [this.name, this.surname]this.name包含数组的第一个元素和 this.surname包含第二个元素。
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Destructuring_assignment

关于javascript - 属性访问是如何工作的,下面这行有什么作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63502987/

相关文章:

javascript - Node JS 无法获取/

javascript - JSON 编码警报消息

javascript - 如何识别js注入(inject)的element.style来源?

java - 给定一个排序整数数组,我如何找到是否存在一组总和为 K 的 3 个元素?

r - 按两个因素拆分数据框

javascript - 如何将 "split"逗号切换为冒号

java - 不使用正则表达式将字符串转换为映射

javascript - 限制 tabindex 聚焦于页面的一部分

arrays - 是否可以在不重复长度的情况下声明指定类型的静态数组?

javascript - 相互检查数组变量