javascript的this分别代表什么

鉴于大家对this到底代表的是什么有疑问,现在将我个人理解的this的情况整理如下。有错误请指正。

第一种情况: 
如果是一个全局的function,则this相当于window对象。


这个打印出来的结果:

通过打印出来的结果可以明显看到,这个时候this相当于window。

第二种情况:

 

打印结果如下:

 

第三种情况:

打印结果如下:

第四种情况:

如果使用new的方式去实例化一个对象,则this不等于window对象,this指向function a的实例

打印结果如下:

时间: 2024-10-12 03:48:49

javascript的this分别代表什么的相关文章

javascript 中$符号是代表什么意思!

$符号在php中是表示变量的特征字符, 在js中它也有很多作用, 一般我们用来命名一个函数名称,获取id的 1. 首先可以用来表示变量, 比如变量 var s='asdsd'或var $s='asdasd'; 2. 在正则表达式中,它可以匹配结尾 /sa$/.test(string) 匹配string字符串中的sa,比如string='125sa'则匹配,string='125sa21'则不匹配 正则表达式很复杂,这里只是简单的说说. 3. 由于受prototype.js(老外写的框架,用于将一

javascript 基础语法

1. 变量 从字面上看,变量是可变的量:从编程角度讲,变量是用于存储某种/某些数值的存储器.我们可以把变量看做一个盒子,盒子用来存放物品,物品可以是衣服.玩具.水果...等. 1.1 变量命名规则 1.1.1.必须以字母.下划线或美元符号开头,后面可以跟字母.下划线.美元符号和数字. 1.1.2.变量名区分大小写,如:A与a是两个不同变量. 1.1.3.不允许使用JavaScript关键字和保留字做变量名. 1.2 变量声明 声明变量语法: var 变量名, 如 var mynum :声明多个变

【JavaScript】Object.observe()带来的数据绑定变革

Object.observe()带来的数据绑定变革 引言 一场变革即将到来.一项Javascript中的新特性将会改变你对于数据绑定的所有认识.它也将改变你所使用的MVC库观察模型中发生的修改以及更新的实现方式.你会看到,那些所有在意属性观察的应用性能将会得到巨大的提升. 我们很高兴的看到,Object.observe()已经正式加入到了Chrome 36 beta版本中. Object.observe()是未来ECMAScript标准之一,它是一个可以异步观察Javascript中对象变化的方

JavaScript知识点总结

JavaScript学习总结1.JavaScript是作用于网络和HTML的一个编程语言.2.JavaScript代码必须放在<script></script>标签之间,Javascript现在是HTML默认的脚本语言,所以在<script>标签中不需要声明脚本语言为JavaScript,即不需要type="text/javascript".3.可以添加任意数量的脚本在HTML document中,JavaScript可以放在<head>

Javascript学习三

//imooc.com js 给变量取个名字(变量命名) 我们为了区分盒子,可以用BOX1,BOX2等名称代表不同盒子,BOX1就是盒子的名字(也就是变量的名字). 我们赶快给变量取个好名字吧!变量名字可以任意取,只不过取名字要遵循一些规则: 1.必须以字母.下划线或美元符号开头,后面可以跟字母.下划线.美元符号和数字.如下: 正确: mysum _mychar $numa1 错误: 6num //开头不能用数字 %sum //开头不能用除(_ $)外特殊符号,如(% + /等) sum+num

JavaScript进阶(一)

OK接下来,我们再次梳理一遍js并且提高一个等级. 众所周知,web前端开发者需要了解html和css,会只用html和css创建一个漂亮的页 面,但是这肯定是不够的,因为它只是一个静态的页面,我们还需要用JavaScript 增加它的行为,为网页添加动态效果. 首先,JavaScript能做什么? 1.增强页面动态效果(如:下拉菜单,图片轮播,信息滚动等) 2.实现页面与用户之间的实时,动态交互(如:用户注册,登录验证等) JavaScript进阶篇章能学习到什么呢? 在JavaScript入

JavaScript 进阶篇的学习~

---恢复内容开始--- 让你认识JS 你知道吗,Web前端开发师需要掌握什么技术?也许你已经了解HTML标记(也称为结构),知道了CSS样式(也称为表示),会使用HTML+CSS创建一个漂亮的页面,但这还不够,它只是静态页面而已.我们还需使用JavaScript增加行为,为网页添加动态效果.准备好,让JavaScript带你进入新境界吧! JavaScript能做什么? 1.增强页面动态效果(如:下拉菜单.图片轮播.信息滚动等) 2.实现页面与用户之间的实时.动态交互(如:用户注册.登陆验证等

Javascript中var that=this;是什么意思(转)

网上大神真是多,书上看半天没看懂,看到大神们的讲解,真是醍醐灌顶~ 哈哈,我啥时候也能这样给别人解疑~ 你可能会发现别人写的代码中有这么一句:var that = this;,这代表什么意思呢? 在javascript中,this代表的是当前对象. var that=this就是将当前的this对象复制一份到that变量中.这样做有什么意义呢? $('#zhetenga').click(function(){ //this是被点击的#zhetenga var that = this; $('.z

Javascript知识三

O(∩_∩)O...今天继续学习了Javascript的知识,下面就总结一下. 数组: 判断是否为数组(instanceof Array) 在JavaScript中,数组不一定是同一类型 var array = ["Hello", 18, true]; if (array instanceof Array) //判断是否为数组 { alert("OK"); } shift和unshift shift:仅仅输出数组中第一项,即索引为0: unshift:输出数组的长度