JS的箭头函数this:
2023-12-15 05:28:59
箭头函数不会创建自己的this,它只会从自己的作用域链的上一层沿用this。
具体看实例:
//以前:谁调用的这个函数 this就指向谁
// console.log(this);//window
// function fn(){
// console.log(this);//window 因为这个函数也是window调用的 window.fn();
// }
// fn();
// //对象方法的this
// const obj = {
// name:'andy',
// sayHi:function(){
// console.log(this);//obj
// }
// };
// obj.sayHi();
// //箭头函数的this 上一层作用域的this指向
// const fn = () => {
// console.log(this);//window
// }
// fn();
// //对象方法的箭头函数的this
// const obj = {
// uname:'aa',
// sayHi:() => {
// console.log(this);//this指向window
// }
// }
// obj.sayHi();//window;
//因为箭头函数没有this 所以在箭头函数里面查找this
//会找到上一级 而是window调用obj的 ——> window.obj
const obj = {
uname:'pink老师',
sayHi:function(){
console.log(this);//obj
let i = 10;
const count = () =>{
console.log(this);//obj
/*
因为箭头函数没有this指向 所以会找上一级的thi指向
而sayHi这个函数是普通函数 谁调用它它就指向谁
所以sayHi的this指向是obj obj.sayHi();
所以count箭头函数的指向也为bj
*/
}
count();
}
}
obj.sayHi();
文章来源:https://blog.csdn.net/weixin_63383437/article/details/134992494
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!