zoukankan      html  css  js  c++  java
  • 第六篇 javascript面向对象

    一、闭包

    闭包是指可以包含自由(未绑定到特定对象)变量的代码块。

    「闭包」,是指拥有多个变量和绑定了这些变量的环境的表达式(通常是一个函数),因而这些变量也是该表达式的一部分。

    闭包是个函数,而它「记住了周围发生了什么」。表现为由「一个函数」体中定义了「另个函数」

    由于作用域链只能从内向外找,默认外部无法获取函数内部变量。闭包,在外部获取函数内部的变量。

    <script>
      name="aa";
        function f1(){
            var name="bb";
            function f2(){
                alert(name);
            }
            return f2
        }
        var ret=f1();
        ret();
    </script>

    二、面向对象

     1、首先介绍prototype

    每个函数就是一个对象(Function),函数对象都有一个子对象 prototype对象,类是以函数的形式来定义的。prototype表示该函数的原型,也表示一个类的成员的集合

    在通过new创建一个类的实例对象的时候,prototype对象的成员都成为实例化对象的成员。

    1、该对象被类所引用,只有函数对象才可引用;

    2、在new实例化后,其成员被实例化,实例对象方可调用。

    同时,函数是一个对象,函数对象若直接声明成员,不用被实例化即可调用。

    具体参考

    http://baike.baidu.com/item/prototype/14335187

    2、原型

    js中的面向对象

    没有class  只有函数,函数可以构造出来类

    这里的this就相当于 python中的self

    创建对象  需要new

    这里的数据是封装在对象里的

    具体说明 如下:

    //      表示创建了一个类Foo,并且创建了Foo类的构造方法
            function Foo(name){
                this.Name=name;
    //            把下面的换成原型
    //            this.func= function () {
    //                alert(this.Name)
    //            }
            }
    //      创建原型是为了让方法放入类中,每个对象直接来调用就好了
            Foo.prototype={
                func: function () {
                    alert(this.Name)
                }
            }
    //        原型的第二种写法
            Foo.prototype.func=function(){
                alert(this.Name)
            }
    <script>
        function Foo(name,age){
            this.Name=name;
            thos.Age=age;
        }
        Foo.prototype = {
            Func:function(){
                return this.Name+this.Age
            }
        }
        obj1=new Foo("eric",18);
        ret=obj1.Func();
        console.log(ret)
    </script>
    面向对象原型
  • 相关阅读:
    12864
    经常使用的正則表達式归纳—JavaScript正則表達式
    官方原版Windows XP SP3(VOL)中文简体版ISO下载
    java final keyword
    ssh 实体关系分析确立(ER图-实体关系图)
    android uiautomator自己主动化測试
    NYOJ 891 找点
    第十一届GPCT杯大学生程序设计大赛完美闭幕
    前端学习——JQuery Ajax使用经验
    VC中获取窗体句柄的各种方法
  • 原文地址:https://www.cnblogs.com/pyrene/p/6577489.html
Copyright © 2011-2022 走看看