对象中的此关键字 [duplicate]

This keyword in the object [duplicate]

提问人:Diana 提问时间:3/24/2023 最后编辑:Mark RotteveelDiana 更新时间:4/1/2023 访问量:38

问:

这个问题在这里已经有答案了:
8个月前关闭。

这篇文章在 8 个月前被编辑并提交审核,未能重新打开帖子:

原始关闭原因未解决

我是 Javascript 的新手,并试图理解箭头函数在对象中的这个。

  1. const obj = {
     name:"Lia",
     sayHi: ()=> {
      return this.name
     }
    }
    
  2. const obj2  ={
        age:"40",
        nested :{
            age: 50,
            named : ()=>{
                console.log(this, "arr")
                console.log(this.age)
                let x = ()=>{
                    console.log(this, "this")
                    console.log(this.age, "Age from nest")
                }
               x()
            }
        }
    }
    

在谷歌上,我读到箭头函数不绑定自己的范围,而是从父范围继承它。第一个示例中的父级是 obj 对象。但是,当我运行代码时,它会打印 undefined,而在第二个示例中它工作正常。为什么?我怎样才能知道谁是箭头函数中关键字的父级?this

javascript 对象 这个

评论


答: 暂无答案