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


    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
    <title>无标题文档</title>
    <script type="text/javascript" src="jquery.js"></script>

    <script type="text/javascript">
    var page={};

    $(document).ready(
    function(){
        
    //alert(typeof page);
    });

    function MyClass (name){
        
    //Dynamic Propertie
        this.Name=name;
        
    //dynamic function
        this.showName=function(){
            document.write(name
    +"<br />");
        };
    }

    MyClass.staticName
    ="静态成员";
    //静态方法
    MyClass.staticFun=function(name){
        document.write(
    " 静态方法返回值: "+name +"<br />"+"staticName:"+MyClass.staticName);
    };

    //当函数a的内部函数b被函数a外的一个变量引用的时候,就创建了一个闭包。
    //
    /////////////////////////closure闭包//////////////////////////////////////
    var testCls=function(arg1){
            
    //对象内部公有变量,不允许外部访问
            var a=arg1;
            
    var b=10;
            
    var alertB=function(){
                     alert(b);
             }

            
    //外部可访问区域
            return {
                     c:
    5,
                     setA:
    function(v){
                             a
    =v;
                     },
                     alertA:
    function(){
                             alert(a);
                     },
                     alertB:
    function(){
                             alertB();
                     }
             }
    };

    var test=new testCls(4);
    /*
    test.setA(6);
    test.alertA();
    test.alertB();
    //alert(test.a);      //undefined,具有较好的封闭性
    alert(test.c);        //5
    */
    ///////////////////////////////////////////////////////////////////////////////////
    //
    另外,还有一种格式颇受争议:
    //
    (function(a,b){...})(a,b);
    (function MyClass2(a,b){
        
    this.MyVar="我的变量";
        alert(a
    +b+this.MyVar);
    })(
    1,2);


    </script>
    </head>

    <script type="text/javascript">
    var mc=new MyClass("吴xx");
    mc.showName();
    //静态方法只能用类引用,不能 mc.staticFun("静态参数!");
    MyClass.staticFun("静态参数!");
    </script>

    <body>
    </body>
    </html>
  • 相关阅读:
    MySQL查询今天/昨天/本周、上周、本月、上个月份数据的sql代码
    lumen 登陆 注册 demo
    Maven与Ant的区别
    Java中String为什么是final
    一天一点MySQL复习——获取数据库系统时间、变量赋值、变量比较
    一天一点MySQL复习——存储过程
    Mybatis学习——传递Map型参数
    Java修饰符
    RegEx正则表达式学习笔记
    一天一个Java基础——通过异常处理错误
  • 原文地址:https://www.cnblogs.com/wucg/p/1785822.html
Copyright © 2011-2022 走看看