主要是跟 this 有关系。
---------------------------------------------------------------------------------
关于this解释,可以参考https://zhuanlan.zhihu.com/p/23804247
摘录上述链接部分内容:
JS有三种函数调用形式:
func(p1,p2) //语法糖
等价于 func.call(undefined,p1,p2)
obj.child.method(p1,p2) //语法糖
等价于 obj.child.method.call(obj.child,p1,p2)
func.call(context,p1,p2) // 正常调用形式
this为call一个函数时,正常调用形式下,传递的第一个参数context。
浏览器有一条规则:如果你传的context是null或者undefined,那么window对象就是默认的context。
---------------------------------------------------------------------------------
本文深入解析JavaScript中this关键字的工作原理,包括其在不同函数调用形式下的行为,以及浏览器如何处理null或undefined作为上下文的情况。
1285

被折叠的 条评论
为什么被折叠?



