zoukankan      html  css  js  c++  java
  • 关于javascript中静态成员和实例成员的详细解释

    关于javascript中静态成员和实例成员的详细解释 

         在我们了解什么是静态成员和实例成员之前,我们首先来了解一下什么是实例?  

       实例就是由构造函数创建出来的对象。

         例如案例中 p 就是实例:   

         function Person() {}//  此函数为构造函数   

         var p=new Person();  // p为构造函数创建出来的对象

         我们在讨论静态成员和实例成员时候,把函数当成构造函数, 把创建出来的对象称之为实例。在此明白了什么是实例,下面我们就可以说什么是静态  成员和实例成员了。

      首先什么是实例成员?

       实例成员:由构造函数创建出来的对象能直接访问的属性和方法,包括:对象本身 以及原型中的所有的属性和方法。

       案例如下: function Person(name, age) {

                                 this.name = name;  

                                  this.age = age;  

                                      }

                     Person.prototype.sayHi = function() {

                                                           console.log("hello, rose");   

                                                        };  

                                                  var p = new Person("jack", 19);    

                                    ( p.name  p.age  p.sayHi)  括号内三个就是实例成员了。

              再次什么是静态成员?

              静态成员:由构造函数直接访问到的属性和方法。大家注意是直接访问的属性和方法,间接获取就不是了。

              案例如下: function Person(name, age) {  

                                                  this.name = name;

                                                        this.age = age;  

                                                          }

                                   var p = new Person("jack", 19);                

                                Person.say = function() {    alert("这是静态方法");            };        

                                         Person.say  就是静态成员            

                                          Person.length  也是静态成员,因为length是函数中的 方法,是来直接获取函数中形参的个数。

                               接下来会有人问,在实际工作中有什么用?我个人认为工作中用到的机会不多,有人会说工作中既然用的不多,  干嘛还废那么话来说,但是对于我们看Jquery源码是有用处的。         

          jQuery 的 each方法就是给静态成员实现这个方法,然后实例成员直接调用这个方法(大多数框架中都是使用该方法) 。    

            所有有了两种使用方式:

                    $.each("div",function(){}) 

                    $("div").each(function(){})                    

  • 相关阅读:
    镜像的上传和下载
    ps 命令
    过滤不合格数据
    云计算5-3-2法则
    Python Django初入门
    python web框架
    BootStrap、EasyUI、JQueryUI
    JS正则
    ngonx FastCGI 相关参数调优
    Windows10远程连接错误-出现身份验证错误
  • 原文地址:https://www.cnblogs.com/lsy0403/p/5847256.html
Copyright © 2011-2022 走看看