码迷,mamicode.com
首页 > Web开发 > 详细

js的面相对象编程小例子

时间:2015-06-25 21:24:37      阅读:122      评论:0      收藏:0      [点我收藏+]

标签:js 面向对象

<script type="text/javascript">

    //1.hello js面向对象

    function Hello(){

    alert(99);

    }


    function _test1(){

    var hello=new Hello();

    }

    //2.定义实例变量

    function Page(){}


    Page.prototype = {

    //2.1定义属性 类似于java的成员变量

    name:‘当前页‘, //该属性是共有属性 相当于java中的public修饰的变量

    nextPage:function(){

           alert(‘跳转到下一页‘);

    }

    };


    function _test2(){

    var page=new Page();

    page.nextPage();//类似于java中的方法

    page.name;

    alert(page.name);

    //2.2 注意属性的赋值形式

    page.name="我被修改了";

    alert(page.name);

    }


    //3.定义对象中的私有变量 类似于java中的被private修饰的属性

     function Person(){

      //这种定义不会被直接调用 

      var name="我是私有的成员变量";

      this.getName=function(){

           alert(name);

           alert(this.name); //打印出undifined  原因在于name没有提供get方法  或者理解为js的obj.xxx只针对共有变量 这一点区别于java

      }

     }


     function _test3(){

      var person=new Person();

      person.getName();// 3.1 打印出 "我是私有的成员变量";

      alert(person.name);// 3.2 打印出undifined

     }


     //4.js如何定义类的静态方法

     function User(){


     }


     User.name="我是静态属性名";

     User.getSex=function(){

      alert(‘获取性别‘);

     }


     function _test(){

         var person=new Person();

         person.getName();//实例访问方法


         User.getSex(); //静态方法

         //静态方法不能被访问  和java一样  生命周期不一样

         var user=new User();

         user.getSex();


     }


</script>


js的面相对象编程小例子

标签:js 面向对象

原文地址:http://6276718.blog.51cto.com/6266718/1665673

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!