具有下面的代码,其中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中进行正确的搜索。我没有写任何有用的文章。条款或帮助文档将不胜感激。
谢谢。
在第二个示例中,您使用闭包。