javascript—在使用“this”关键字的方法中,如何从其他属性访问对象属性?

5sxhfpxr  于 2021-09-13  发布在  Java
关注(0)|答案(1)|浏览(300)
const america = {
  name: 'United State of America',
  yearFounded: 1776,
  details: {
    symbol: 'eagle',
    currency: 'USD',
    printDetails: function() {
      console.log(`The ${this.name} was founded in ${this.yearFounded} and its currency is ${this.currency}, with an ${this.symbol} symbol`);
    }
  }
}

america.details.printDetails();
wlwcrazw

wlwcrazw1#

名称和创建年份不是调用方法的对象的一部分,而是其他对象。您可以通过显式引用来访问它 america.… ,无法通过 this 关键词。这个 this 方法调用中的值引用 details 对象而已。
或者,移动 printDetails 方法调用外部对象(以便可以调用 america.printDetails() 而不是 america.details.print() ),并使用 this.namethis.details.currency 分别地或者只是将整个结构展平为单个对象。

相关问题