引用对象的变量ID与使用'this'之间有什么区别吗?

问题描述 投票:1回答:1

具有下面的代码,其中fc 1和fc2方法均应在它们生成并返回的对象内(而不是从Foo实例中)返回x属性的值:

function Foo() {
  this.x = 5;
}

Foo.prototype.fc1 = function() {
  return {
    x: 6,
    getx() {
      return this.x;
    }
  }
}

Foo.prototype.fc2 = function() {
  const o = {
    x: 6,
    getx() {
      return o.x;
    }
  }
  return o;
}

在方法fc1和fc2之间是否有像在fc2中一样从对象内部使用或引用常量标识符的内部或相关方面的区别?我倾向于使用fc2模式,因为对我来说似乎更干净(仅使用this听起来对我来说是件好事!)。性能不是问题,但是无论如何,最好知道是否必须考虑与之相关的问题。

不是英语为母语的人,如果我不清楚,请告诉我。另外,无法在Google中进行正确的搜索。我没有写任何有用的文章。条款或帮助文档将不胜感激。

谢谢。

javascript object reference this
1个回答
1
投票

在第二个示例中,您使用闭包。

© www.soinside.com 2019 - 2024. All rights reserved.