在JavaScript严格模式下关于这个的几个方向的详细解释
序
相信很多人在学习或者使用Javascript的时候,已经被JavaScript中的这一点给弄糊涂了,所以本文将在严格模式下对这一点的几个方向进行梳理和总结。
1.这在全球范围内
在严格模式下,在全局范围内,这指向窗口对象
使用“严格”;Console.log('严格模式');Console.log('这在全局范围内');console . log(' this . document===document ',this . document===document);console.log('this===window ',this===window);this.a=9804console . log(' this . a===window . a==',window . a);
第二,这在全球范围内的功能
在严格模式下,这个函数中的这个等于undefined
使用“严格”;Console.log('严格模式');Console.log('这在全局范围内的函数中');函数f1(){ console . log(this);}函数f2(){函数F3(){ console . log(this);} F3();} f1();F2();
第三,这个在函数(方法)中的对象
在严格模式下,对象函数中的这个指向调用该函数的对象实例
使用“严格”;Console.log('严格模式');Console.log('这在对象的函数中');var o=新对象();o . a=' o . a ';o . F5=function(){ return this . a;} console . log(o . F5());
第四,构造函数的这个
在严格模式下,构造函数中的这个指向构造函数创建的对象实例。
使用“严格”;Console.log('严格模式');console . log(' this in constructor ');function constru(){ this . a=' constru . a ';this . F2=function(){ console . log(this . b);归还这个。} } var O2=new constru();O2 . b=' O2 . b ';console . log(O2 . F2());
动词(verb的缩写)这在事件处理功能中
在严格模式下,在事件处理程序中,这指向触发事件的目标对象。
使用“严格”;函数blue _ it(e){ if(this===e . target){ this . style . background COlOr=' # 00f ';} } var elements=document . getelementsbytagname(' * ');for(var I=0;ielelements . length;i ){元素[i]。onclick=blue _ it}//这个代码的作用是让被点击元素的背景变成蓝色。6.这发生在内联事件处理程序中
在严格模式下,在内联事件处理程序中,有两种情况:
button onclick=' alert((function(){ '使用strict ';返回this })();”内嵌事件处理1/按钮!-警告窗口中的字符未定义-按钮onclick=“使用严格的”;alert(this . tagname . tolowercase());”内嵌事件处理2/按钮!-警告窗口中的字符是button -最后一个单词
参考数据
https://developer.mozilla.org医学发展网络.
扩展数据
JavaScript严格模式详解//www . JB 51 . net/article/74890 . htm
菜鸟学校JavaScript严格模型http://edu.jb51.net/js/js-strict.html
摘要
以上就是本文的全部内容。希望本文的内容能给你的学习或工作带来一些帮助。有问题可以留言交流。谢谢你的支持。
版权声明:在JavaScript严格模式下关于这个的几个方向的详细解释是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。