JavaScript中的this详解
来源:互联网 发布:电源仿真软件 编辑:程序博客网 时间:2024/04/25 07:11
JS中的this指的是当前行为主体,context代表的是当前行为执行的环境,this和函数的context没有任何关系。
那么问题来了,如何区分this?
1、函数执行,首先看函数前有没有“.”,若有,则前面是谁this就是谁,若没有,this就是window;
例如:
function fn(){ console.log(this);}var obj={fn:fn};var oo={ sum:function(){ fn(); }};function sum(){ fn();}fn(); // 输出 windowobj.fn(); // 输出 objsum(); // 输出 windowoo.sum(); // 输出 window
2、自执行函数的this是window;
3、给一个对象绑定匿名函数时,该函数的this变为该对象;
例如:给一个元素绑定事件时,事件执行的函数中this 是该元素
document.getElementById("div1").onclick = function(){ console.log(this); // 输出为绑定的div元素 fn(); // 输出为window}
阅读全文
0 0
- JavaScript中的this详解
- 详解 JavaScript 中的 this
- 详解 JavaScript 中的 this
- 详解 JavaScript 中的 this
- 详解 JavaScript 中的 this
- 详解 JavaScript 中的 this
- 详解 JavaScript 中的 this
- 详解JavaScript中的this
- 详解 JavaScript 中的 this
- 详解 JavaScript 中的 this
- 详解 JavaScript 中的 this
- 详解JavaScript中的this
- JavaScript中的this详解
- JavaScript中的this详解
- JavaScript中的This详解
- 详解JavaScript中的this
- JavaScript中的this详解
- this详解:JAVASCRIPT中的this到底是谁?
- Python使用selenium包自动化测试教程
- Socket通信-accept+多线程
- Java设计模式——工厂模式
- MVP+Retrofit+fresco+greendao+eventbus
- Dinic
- JavaScript中的this详解
- 数组1
- opc 注册表
- jvm探秘六:字节码指令集
- LeetCode 189 Rotate Array
- Zigbee通讯之开发篇(基于TI 的Z-Stack)
- Vivado兼容问题
- HEVC标准及编码流程介绍
- 变分推断(variational inference)