查一下资料得知JS的this是指向调用的对象。
只有这一句话很难理解那来做个写个dome。
代码如下:
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>this测试</title>
<script type="text/javascript" src="jquery-3.3.1/jquery-3.3.1.min.js"></script>
<script type="text/javascript">
var a="全局";
$(function(){
console.log(this);
$("#start").click(function(){
console.log(this);
});
});
function test(){
console.log(this);
console.log(this.a);
}
</script>
</head>
<body>
<div id="start" >开始</div>
<div id="test" οnclick="test()">点击测试</div>
</body>
</html>
从上往下可以看到四个输出问题
运行看下结果:
可以看到123输出的结果都不一样
第一个是HTMLDOM
第二个是一个div
第三个是一个window
上面代码可以分析如下:
(PS:this在官方介绍指上一级对象,打错字了)