js加强

js深度解析

闭包讲解

1.闭包是和gc(垃圾回收机制)相关的

2.闭包实际上是涉及一个对象属性  何时被gc回收的问题

3怎样产生闭包?

<script type="text/javascript">
//闭包
/*
闭包是和gc(垃圾回收机制)相关的
闭包实际上是涉及一个对象属性 何时被gc回收的问题
*/
function A(){
var i=0; function b(){
window.alert(i++);
}
return b;
}
A();//此时A内存中 变量 i 被gc处理
var c=A();//这种方式 因为c调用了 变量 i 所以gc不会立即回收
c();//输出为0
c();//输出为1 </script>

实例

创建对象的五种方式

使用构造方法定义对象

基本语法

 function show(){};
var per=new Person();
window.alert(per.constructor);
window.alert(typeof per);

向对象添加方法几种方式
第一种方式

 function Dog()
{ }
var dog1=new Dog();
dog1.shout=function()
{
window.alert('小狗');
};
dog1.shout();
var dog2=new Dog(){ }
dog2.shout();

第二种方式

 function Dog()
{ }
var dog1=new Dog();
Dog.prototype.shout=function()
{
window.alert('小狗');
};
dog1.shout();
var dog2=new Dog();
dog2.shout();

相比于第一种方法这种方法效率更高,因为第一种方法每个对象都独占函数代码,如果对象较多,会影响效率。(prototype原型对象)

 

最新文章

  1. 数据库中GETDATE()函数格式化时间
  2. iOS视频播放器
  3. java动态代理浅析
  4. OpenSSL - RSA非对称加密实现
  5. 微软职位内部推荐-Sr. SW Engineer for Azure Networking
  6. Educational Codeforces Round 14 D. Swaps in Permutation (并查集orDFS)
  7. WAF 与 RASP 的安装使用大比拼!
  8. web design tools
  9. jQuery的AJAX方法简介及与其他文件$符号冲突的解决办法
  10. 1642: [Usaco2007 Nov]Milking Time 挤奶时间
  11. 201521123061 《Java程序设计》第三周学习总结
  12. Testng基本问题
  13. revit融合
  14. React 的坑
  15. jmeter每10个停一会实现方案
  16. exec存储过程示例
  17. python unittest套件,修改为失败重新执行
  18. QT数据类型
  19. MISL Learning
  20. 领扣-5 最长回文子串 Longest Palindromic Substring MD

热门文章

  1. oschina添加ssh公钥一记
  2. Python 字符串格式化输出方式
  3. iptables的配置文件/etc/sysconfig/iptables不存在 linux防火墙开关命令
  4. 深入理解css之absolute
  5. 团队项目-任务分解[Alpha0]
  6. C#中的&amp;运算
  7. dirname(__FILE__)
  8. 如何在CentOS7上改变网络接口名
  9. [CF949C]Data Center Maintenance
  10. JZOJ 5305 C先生