zoukankan      html  css  js  c++  java
  • javascript中如何模拟“类”

    javascript作为弱类型的放言,没有类似于java,c#中“类”的概念,但实际开发中很多时候会有这样的需求,目前知道有两种方式可以模拟。
        1.通过声明一个对象的方式,可有如下代码:

    var people = {
            age:12,
            name:"jack",
            sex:"男",
            setAge:function(value){
                this.age = value;
            },
            getAge:function(){
                return this.age;
            },
            setName:function(value){
                this.name = value;
            },
            getName:function(){
                return this.name;
            },
            setSex:function(value){
                this.sex = value;
            },
            getSex:function(){
                return this.sex;
            },
            //除了这些属性的读取方法之外还可以有其它方法
            sayHi:function(){
                document.write("Hi,everybody!");
            },
            //也可以这样写
            function sayHi(){
                document.write("Hi,everybody!");
            }
        }
    

       这样一个“类”就写好了,可以通过如下方式调用:
        people.age(或者people.getAge)来获取年龄信息
        people.setAge来修改年龄
        需要注意的是,由于"people"并不是真正的类,而是javascript的一个对象,所以people中所有元素,无论是属性还是方法,都被javascript当成属性处理,所以全部用","隔开。

     2.通过声明一个function的方式

     function people(){
            var age,name,sex;
            this.getAge = function(){
                return this.age;
            }
            this.setAge = function(value){
                this.age = value;
            }
        }
    

      相关操作基本与第一种方法一样。
        两种方法的应用场景目前尚不明确,需要进一步学习研究。

    ------------------------------- 把努力当成习惯 -------------------------------
  • 相关阅读:
    【FZYZOJ】细菌 题解(最短路)
    oracle 开发 第02章 查询
    oracle 开发 第01章 简介
    rhel配置163、epel、rpmforge的yum源
    linux 手动清除缓存
    查看linux内核版本和发行版本
    linux下安装rlwrap
    linux下安装vncserver
    Nagios 安装
    linux mutt发送报表
  • 原文地址:https://www.cnblogs.com/qinchuan/p/4226196.html
Copyright © 2011-2022 走看看