位置: 编程技术 - 正文
this的工作原理
如果一个函数被作为一个对象的方法调用,那么this将被指派为这个对象。
注意这种行为非常“脆弱”,如果你获取一个方法的引用并且调用,那么this的值不会是parent了,而是window全局对象。这让大多数开发者迷惑。改动this
.call、 .apply 和.bind 方法用来操作调用函数的方式,帮我们定义this的值和传递给函数的参数值。
Function.prototype.call 可以有任意数量的参数,第一个参数被分配给this,剩下的被传递给调用函数。
Function.prototype.bind 创建一个特殊的函数,该函数将永远使用传递给.bind的参数作为this的值,以及能够分配部分参数,创建原函数的珂里化(curride)版本。 作用域链中的this
在下面的例子,this将无法在作用域链中保持不变。这是规则的缺陷,并且常常会给业余开发者带来困惑。
有一个常见的方法,创建一个局部变量保持对this的引用,并且在子作用域中不能有同命变量。子作用域中的同名变量将覆盖父作用域中对this的引用。
推荐整理分享javaScript中的this示例学习详解及工作原理(JavaScript中的变量名不区分大小写),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:javascript中的基本数据类型有哪些,JavaScript中的变量名不区分大小写,javascript中的this指向变量,javascript中的this属性,JavaScript中的变量名不区分大小写,Javascript中的this,javascript中的this属性,JavaScript中的this指向,内容如对您有帮助,希望把文章链接给更多的朋友!
parentElement,srcElement的使用小结 !DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""
javascript函数作用域学习示例(js作用域) 在一些类似c语言的编程语言中,花括号内的每一段代码都具有各自的作用域,而且变量在声明他们的代码段之外是不可见的,我们称为块级作用域(bloc
javascript教程之不完整的继承(js原型链) Javascript的继承和标准的oop继承有很大的区别,Javascript的继承是采用原型链的技术,每个类都会将成员变量和成员函数放到prototype上,Js++都过superclass将
友情链接: 武汉网站建设