this和self
来源:互联网 发布:矩阵非奇异是什么意思 编辑:程序博客网 时间:2024/05/16 04:55
var myObject = {
foo:
"bar"
,
func: function() {
var self =
this
;
console.log(
this
.foo);
console.log(self.foo);
(function() {
console.log(
this
.foo);
console.log(self.foo);
}());
}
};
myObject.func();
程序的输出是什么?
barbarundefinedbar
this总是指向调用它的那个对象,如果是立即执行函数或者setTimeOut()这样的全局(window)函数则this指向的是window对象即this为全局的this.x中的x为全局变量
2.js的作用域链,如果本作用域着不到对象就向上一层找
第三个是闭包,this指向window,thi敏感词oo也就是 window.foo,第四个self指向上一层的this
依次输出 bar bar undefined bar
理解关键:方法/函数是由谁(对象) 调用 的,方法/函数内部的 this 就指向谁(该对象);
注意:被谁调用,不是处于谁的作用域,即使在作用域
1、func是由myObject调用的,this指向 myObject。
2、self指向myObject,相当于 myObject的this的副本。
3、这个立即执行匿名函数表达式(IIFE)是由window调用的,this指向 window 。
4、IIFE的作用域处于myObject.func的作用域中,本作用域找不到self变量,沿着作用域链向上查找self变量,找到了指向 myObject对象的 self。
0 0
- self和this
- this和self
- this和self区别
- self和this使用小结
- self :: 和 this-> 的区别
- this和self的区别
- php中的$this和self
- $this和self的区别
- :: self this
- PHP this,self 和 parent 关键字 详解
- PHP this,self 和 parent 关键字 详解
- self,parent,this的区别和用法
- JavaScript的self和this使用小结
- JavaScript的self和this使用小结
- JavaScript的self和this使用小结
- JavaScript的self和this使用小结
- JavaScript的self和this使用小结
- JavaScript的self和this使用小结
- 查找并删除当前目录及其子目录下的所有重复文件
- 关于Android数据库orm工具库对比的几点思考(三)
- 机器学习之神经网络模型-下(Neural Networks: Representation)
- 环信移动客服商城demo摘取简易demo
- IIS日志-网站运维的好帮手
- this和self
- Maven下载安装、Eclipse配置maven详解、如何测试环境是否搭建成功及在Eclipse中创建Maven项目
- Rxjava--Subscriber创建流程(观察者)
- 怎样解决Java Web项目更改项目名后报错以及不能找到web路径问题
- 部署第一个域:Active Directory系列之二
- 软件测试总结
- 微信小程序入门Demo(石头剪刀布)
- awakeFromNib与initWithCoder
- LeetCode 笔记(一)