Skip to content

输出什么?

Posted on:2021年7月3日 at 22:35
const user = {
  email: "my@email.com",
  updateEmail: (email) => {
    this.email = email;
  },
};

user.updateEmail("new@email.com");
console.log(user.email);

updateEmail 函数是一个箭头函数,它没有和 user 对象绑定。这就意味着 this 关键字不会引用到 user 对象,但是会引用到全局对象。 user 对象内部的 email 的值不会更新。当打印 user.email 的时候, 原始值 my@email.com 被返回。

原文转自:https://fe.ecool.fun/topic/b77c84b0-6353-4eaa-ad71-6b75df79b94c