【问题标题】:How to access `this` value within the object [duplicate]如何访问对象中的`this`值[重复]
【发布时间】:2018-03-26 22:12:32
【问题描述】:

在下面的代码中,我可以像这样访问wrappertutorial.screen1.wrapper

var tutorial = {
  screen1: {
    text: '<div class="text">Click this to continue</div>',
    wrapper: '<div class="tutorial tutorial-screen-1">' + this.text + '</div>'
  }

因为this.text无法访问,所以tutorial.screen1.wrapper抛出错误。

如何使 this.text 在对象中使用?

【问题讨论】:

  • 我不是 100% 确定,但我认为他的意思是 this.texttutorial.screen1.text。即他想在tutorial.screen1.wrapper 中使用tutorial.screen1.text 的值,得到wrapper: '&lt;div class="tutorial tutorial-screen-1"&gt;' + '&lt;div class="text"&gt;Click this to continue&lt;/div&gt;' + '&lt;/div&gt;' 之类的东西
  • @Krusader 这不起作用,因为您在定义之前引用了教程对象
  • 在您的示例中,this 指的是window

标签: javascript


【解决方案1】:

您可以通过创建wrapper 作为函数来做到这一点

var tutorial = {
  screen1: {
    text: '<div class="text">Click this to continue</div>',
    wrapper: function() {
      return '<div class="tutorial tutorial-screen-1">' + this.text + '</div>'

    }
  }
}
console.log(tutorial.screen1.wrapper())

【讨论】:

    猜你喜欢
    • 2018-06-18
    • 1970-01-01
    • 2016-02-26
    • 2019-06-09
    • 2013-07-01
    • 2021-09-09
    • 2020-09-19
    • 2019-10-09
    • 2014-04-24
    相关资源
    最近更新 更多