记一次JS传递this调用时显示undefined

    a.jpg
第一次发现这个问题,记录一下。
代码如下:
//函数
function test(ob){
    alert(ob.innerHTML);
}
//触发
<a href="javascript:test(this);">test</a>
传入this,在调用其innerHTML时却弹出undefined,于是打算只弹出ob试试,弹出的不再是undefined,而是:
[object Window]
看到这个,我们会发现其跟我们平常的object传参不太一样,多了Window,也就是表示这不是一个普通的DOM对象,而是浏览器对象。
知道这个以后,我们尝试普通的函数触发方式---》onclick,代码如下:
<a href="#" onclick="test(this)">test</a>
这时我们再触发函数,成功弹出innerHTML,如下图:
b.JPG

到这里,关于JS传参this提示undefined就解决了,有问题还请大佬指出哦( ̄▽ ̄)"
作者:徐先森 文章名: 《记一次JS传递this调用时显示undefined》
收录情况: 百度已收录
版权说明:若无特别注明,本文皆为 "徐博客”原创,转载请保留出处!

相关推荐

网友评论(已关闭)