《悟透javascript》-摘抄3.0
来源:互联网 发布:mac傻瓜剪辑视频软件 编辑:程序博客网 时间:2024/03/29 13:22
闭包。
看以下代码:
function Person(firstName,lastName,age){}
这里定义一个人的方法,具有姓、名、年龄三种属性。
随后:
var_firstName=firstName; var _lastName=lastName; this.age=age; this.getName=function(){ return(firstName+" "+lastName) };
内部定义了一个获取姓名的方法getName();
然后定义一个sayhello的方法;
this.SayHello=function(){ console.log("hello,I'm "+ firstName+" "+ lastName) };
这个Person暂时只有这几个。
下面新建两个对象,BillGates和SteveJobs
var BillGates=new Person("Bill","Gates",52);var SteveJobs=new Person("Steve","Jobs",48);
此时,如果写下如下代码:
BillGates.SayHello();SteveJobs.SayHello();
会出现以下结果:
hello,I'm Bill Gateshello,I'm Steve Jobs
当然,每个对象也是可以调用自己的属性的。
console.log(BillGates.getName()+" is "+BillGates.age +" years old");console.log(SteveJobs.getName()+" is "+SteveJobs.age +" years old");
这里将输出以下:
Bill Gates is 52 years oldSteve Jobs is 48 years old
这里,在一个函数内一次定义了私有成员(姓名),公共属性,以及可用的方法。特别是闭包机制可以模拟对私有成员的保护机制。
解释一下闭包,就是在够高函数体内 定义另外的函数 作为目标对象的方法函数, 这个方法函数反过来引用外层函数体中的临时变量。
这使得目标对象在生存期内始终能保持方法,也能间接保持原构造函数体当时用到的临时变量。
阅读全文
0 0
- 《悟透javascript》-摘抄3.0
- 《悟透javascript》摘抄 1.0
- 《悟透javascript》摘抄1.1
- 《悟透javascript》-摘抄2.0
- 《悟透javascript》摘抄1.2--Caller
- JavaScript摘抄
- 《悟透javascript》摘抄1.3-一首小诗
- 摘抄:JavaScript真经部分
- javascript & DHTML cookbook摘抄
- JavaScript闭包---笔记摘抄
- EJB 3.0学习摘抄
- 摘抄
- 摘抄
- 摘抄
- 摘抄
- 摘抄
- 摘抄
- 摘抄
- 菜鸟先飞之JAVA_三元运算符、if和switch
- cvGoodFeaturesToTrack+图像强角
- java当中的i++和++i的区别
- 投标
- 左偏树
- 《悟透javascript》-摘抄3.0
- 毕业才是开始--我的unity之路
- Python 连接db2 以及读取Excel 操作
- SOA标准之----JBI架构思想
- HttpClient介绍
- 新下载的Google chrome安装后无法添加扩展程序
- 读取Java文件到byte数组的三种方式及Java文件操作大全(包括文件加密,String加密)
- linux下创建、删除软、硬链接
- Android内存优化考虑点记录