js加强

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);

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

技术分享
 1 function Dog()
 2       {     }
 3   var dog1=new Dog();
 4   dog1.shout=function()
 5   {
 6   window.alert(‘小狗‘);
 7   };
 8     dog1.shout();
 9   var dog2=new Dog(){
10   
11   }
12     dog2.shout();


第二种方式

技术分享
 1 function Dog()
 2       {     }
 3   var dog1=new Dog();
 4   Dog.prototype.shout=function()
 5   {
 6   window.alert(‘小狗‘);
 7   };
 8    dog1.shout();
 9   var dog2=new Dog();
10     dog2.shout();

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

 

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。