繁体   English   中英

javascript 对象方法中的“this”是如何工作的? 我在一个对象中有 2 个嵌套函数? [复制]

[英]How does ' this' in javascript's object's method work? I have 2 nested function inside an object? [duplicate]

let objname = {
  fname: 'john',
  lname: 'cena',
  fullname: function () {
    return function (self) {
      console.log(this.fname + this.lname)
    }
  },
}

const fulln = objname.fullname()
fulln()
// Outpur is NaN

有人可以解释一下吗? 我不明白为什么这会返回 NaN。 当我们调用全名方法时,它返回一个函数。 这个函数不会保留外部函数的范围,因此可以访问对象的“this”吗?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM