JavaScript中this对象原理简洁说明
2024-09-06 06:22:42
今天看了阮一峰大神的博客文章:JavaScript 的this原理,把纠结很久的this的指向终于理解清楚了
原文:http://www.ruanyifeng.com/blog/2018/06/javascript-this.html
现在来说说如何区分不同情况下的this对象指向,如下所示:
var obj = {
num: 12,
foo: function() { console.log(this.num) }
} var num = 2;
var fun = obj.foo; obj.foo(); //
fun(); //
obj.foo() 即为调用obj对象下的foo属性对应的方法,但是运行环境还是在对象obj中,故此时的this指向obj对象,故输出为12;
对于 var fun = obj.foo,相当于是将obj对象下的foo函数在内存中的地址赋值给了变量fun,而变量fun却是一个全局变量,所以fun() 的运行环境其实是在window对象下,fun()运行起来后其下的函数foo里的this指向window对象,故此时输出为2;
这是我看了大神博客后的理解加总结,如果有什么不对的地方,希望指正。
最新文章
- HTML DOM 对象
- Grunt基本使用-V1.0
- fzu1342
- 如果因特网中的所有链路都提供可靠的交付服务,TCP可靠传输服务是多余的吗?
- internet connection sharing has been disabled by the network administrator
- Configure custom SSL certificate for RDP on Windows Server 2012 in Remote Administration mode
- sessionStorage 、localStorage 和 cookie 之间的区别
- SSL协议的握手过程
- Lua利用cjson读写json
- CS(计算机科学)知识体
- centos6.5下安装Nginx
- es6数组的复制
- 力扣(LeetCode)69. x 的平方根
- mysql 的REPLAYCE语句
- git 的一般使用
- GPUImage API 文档之GPUImageFilter类
- 14.ThreadLocal
- iOS7 Xcode 5如何设置隐藏状态栏
- CSS文本对齐text-align详解
- python学习(二十二) String(上)
热门文章
- shell /dev/null
- css篇-页面布局-三栏布局
- python面试题之docstring是什么?
- sql语句(删除重复数据只保留一条)
- 树莓派4B更换国内源
- HTML + CSS (上)
- this 的指向问题
- 【记录】uni-app Chrome跨域解决方案插件 has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is...
- JSON对象排序并生成URL参数
- webpack起的项目怎么用手机访问?