• JS类定义方式


    // 方法1 对象直接量

    var obj1 = {
        v1 : "",
        get_v1 : function() {
            return this.v1;
        },
        set_v1 : function(v) {
            this.v1 = v;
        }
    };
    obj1.set_v1('hello1');
    alert(obj1.get_v1());

    // 方法2 定义函数对象

    var Obj = function() {
        var v1 = "";
        this.get_v1 = function() {
            return this.v1;
        };
        this.set_v1 = function(v) {
            this.v1 = v;
        }
    };
    var obj2 = new Obj();
    obj2.set_v1('hello2');
    alert(obj2.get_v1());

    // 方法3 原型继承

    var Obj3 = new Function();
    Obj3.prototype = {
        v1 : "",
        get_v1 : function() {
            return this.v1;
        },
        set_v1 : function(v) {
            this.v1 = v;
        }
    };
    var obj3 = new Obj();
    obj3.set_v1('hello3');
    alert(obj3.get_v1());

    // 方法4 工厂模式

    function loadObj() {
        var tmp = new Object();
        tmp.v1 = "";
        tmp.get_v1 = function() {
            return tmp.v1;
        };
        tmp.set_v1 = function(v) {
            tmp.v1 = v;
        };
        return tmp;
    }
    var obj4 = loadObj();
    obj4.set_v1('hello4');
    alert(obj4.get_v1());
  • 相关阅读:
    关于PHP引用(符号&)的用法
    inline元素相关
    内联元素的margin属性
    chrome 开发者工具使用详情
    闭包 by 5wilon
    容易失忆的css
    题目:吃西瓜
    题目:装箱问题
    题目:最小乘车费用
    题目:竞赛真理
  • 原文地址:https://www.cnblogs.com/shockerli/p/js-class-define-type.html
Copyright © 2020-2023  润新知