提问人:Shrestha 提问时间:12/19/2022 更新时间:12/19/2022 访问量:43
在对象文字中使用箭头函数 [duplicate]
Use of arrow functions in object literal [duplicate]
问:
如何在对象文字中使用箭头函数,以便它能够访问对象中的元素?
// class person {
// name = "nripesh";
// surname = "neupane";
// changeSurname = (newSurname) => {
// this.surname = newSurname; // surname = newSurname also don't work.
// }
// }
// const nripesh = new person();
const nripesh = {
name: 'nripesh',
surname: 'neupane',
changeSurname: (newSurname) => {
console.log(this);
surname = newSurname;
},
};
console.log(nripesh.surname);
nripesh.changeSurname('Pariyar');
console.log(nripesh.surname);
我期待得到 第一输出:Neupane 第二输出:帕里亚尔
我得到了什么 第一输出:Neupane 第二输出:Neupane
在 changeSurname 方法中,这指的是全局 this,它是未定义的,仅使用 surname 也是未定义的。当我使用时,这工作
changeSurname: function(newSurname) {
this.surname = newSurname;
}
答: 暂无答案
下一个:如何在方法的函数中注册它?
评论
{ name: 'nripesh', surname: 'neupane', changeSurname(newSurname) { this.surname = newSurname } }