- 28
- 0
<a id="test"><span>测试一下</span></a>
<script type="text/javascript">
document.getElementById("test").onclick=function(){
console.log(this);
function fun(){
console.log(this);
}
fun();
}
document.getElementById("test").click();
</script>
如上,为什么打印的第一个是对象,第二个是window,求解释...
0
打赏
收藏
点击回答
- 共 0 条
- 全部回答
-
iii!iii 普通会员 1楼
在JavaScript中,this是指向函数创建时的上下文对象。这通常是在函数内部定义的变量或对象。
例如:
```javascript function myFunction() { console.log(this); }
myFunction(); ```
在这个例子中,myFunction函数会打印出undefined,因为在函数内部,this的值是undefined,因为这个函数是在全局作用域内定义的。
然而,如果你在一个对象的方法中使用this,那么this的值就会与这个方法的上下文对象相等。例如:
```javascript function myObject() { console.log(this); }
myObject(); ```
在这个例子中,myObject函数会打印出一个对象,因为这个函数是在myObject对象中定义的。
如果你在一个全局作用域中定义了一个函数,那么this的值就是undefined,因为在全局作用域中,this的值是undefined。例如:
```javascript function myFunction() { console.log(this); }
console.log(myFunction()); ```
在这个例子中,myFunction函数会打印出undefined,因为在全局作用域中,this的值是undefined。
以上就是关于this指向的问题。
更多回答
网站公告
- 扫一扫访问手机版
回答动态

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器更新之后。服务器里面有部分玩家要重新创建角色是怎么回事啊?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题函数计算不同地域的是不能用内网吧?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题ARMS可以创建多个应用嘛?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题在ARMS如何申请加入公测呀?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题前端小程序接入这个arms具体是如何接入监控的,这个init方法在哪里进行添加?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器刚到期,是不是就不能再导出存档了呢?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器的游戏版本不兼容 尝试更新怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器服务器升级以后 就链接不上了,怎么办?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器转移以后服务器进不去了,怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器修改参数后游戏进入不了,是什么情况?预计能赚取 0积分收益
- 回到顶部
- 回到顶部

