html事件处理程序中的this

关于html事件处理程序,也就是直接在html元素的属性上直接添加on+事件名,例如:


这时候,js语句是直接写在html代码里面的。这时候的this的值为点击事件发生的目标元素,也就是上面代码中的button。


html事件处理程序中的this_第1张图片
点击button结果图1

但是如果这个函数封装在元素中或者写在外部文件中呢?会怎么样
实际上根据作用域来看,这时候控制台输出的应该是调用这个函数的对象。例如,如果下面这样的话:



那么控制台记录的应该就是调用testFunction这个函数的对象,也就是window
看看结果:


html事件处理程序中的this_第2张图片
点击button结果图2

你可能感兴趣的:(html事件处理程序中的this)