当前位置:Gxlcms > JavaScript > 学习javascript的闭包,原型,和匿名函数之旅

学习javascript的闭包,原型,和匿名函数之旅

时间:2021-07-01 10:21:17 帮助过:4人阅读

本文通过示例给大家介绍javascript的闭包,原型,和匿名函数,具体详情请看下文。

一 、关于闭包

理解闭包 需要的知识

1.变量的作用域

例1:

readA(); //执行此函数

例2:

note: 函数内部声明变量c时,一定要加上 var,否则 c会成为一个全局变量

所以函数内可见全局变量,函数内的局部变量却对外不可见
js的作用域是链式的,父对象里的变量总对子对象可见,子对象的对象却对父对象不可见
当我们要获取函数内的内部变量

于是有了例3:

闭包很类似基于此做了一个变式

note:

1.慎用闭包,注意内存占用,因为它会保存父函数的状态
2.不要随便改变父函数内部变量的值

理解闭包

note: this 指包含它的函数被执行时所属的对象

例1:

例2:

二 .匿名函数

直接定义一个匿名函数 然后调用这个匿名函数,这种形式在jquery插件的定义时很常见

1.通过函数字母量的方式. 先声明一个匿名函数,然后执行它

2.通过优先表达式的方式 , 由于Javascript执行表达式是从圆括号里面到外面,所以可以用圆括号强制执行声明的函数

3.void操作符 用void操作符去执行一个没有用圆括号包围的一个单独操作数

三 .关于prototype

原型 prototype

理解js中的protitype首先需要明白js的面向对象设计

输出为 Window对象 //但一旦调用new People('xx')时, this 输出为 {name:'xx'} //其实也很好理解,一旦new ,便新建了一个对象

实例对象方法只能这样 new People('leon').introduce(); 调用 因为它使用前必须初始化

类的对象的静态方法

原型方法

原型方法只能由该类的对象 调用

A.prototype = new B();

原型看起来很像继承,但其实不是,它更像clone更准确

如果出现了父类和子类出现了重名的属性,采取就近原则,如果找不到一级一级向上找,如果要指定调用上级的属性,使用call方法

以上内容是小编给大家分享的学习javascript的闭包,原型,和匿名函数之旅,希望对大家有用,更多相关教程请访问JavaScript视频教程!

人气教程排行