JavaScript设计模式——构造函数模式

来源:互联网 发布:妈妈知道软件下载 编辑:程序博客网 时间:2024/06/06 04:17

构造函数用于创建特定类型的对象——不仅声明了使用的对象,构造函数还可以接受参数以便第一次创建对象的时候设置对象成员值。可以自定义自己的构造函数,然后在里面自定义类型对象的属性和方法。

在JavaScript里,构造函数通常是认为用来实现实例的,JavaScript没有类的概念,但是有特殊的构造函数。通过new关键字来调用自定义的构造函数,在构造函数内部,this关键字引用的是新创建的对象。


作用和注意事项

作用:

1.用于创建特定类型的对象

2.第一次声明的时候给对象赋值

3.自己声明构造函数,赋予属性和方法

注意事项:

1.声明函数的时候处理业务逻辑

2.区分和单例的区别,配合单例实现初始化

3.(建议)构造函数大写字母开头

4.注意new的成本(继承)


代码如下:

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title>index</title></head><body><script>    //$.ajax就是一个建造者模式    /*$.ajax({        url:'a.php',        success:function (argument) {        }    });*/    function Fangzi() {        this.woshi = '';        this.keting = '';        this.chufang = '';    }    function Baogongtou() {        this.gaifangzi = function (gongren) {            gongren.jian_chufang();            gongren.jian_keting();            gongren.jian_woshi();        }    }    function Gongren() {        this.jian_woshi = function () {            alert("woshi is ok!");        };        this.jian_keting = function () {            alert("keting is ok!");        };        this.jian_chufang = function () {            alert('chufang is ok!');        };        this.jiaogong = function () {            var _fangzi = new Fangzi();            _fangzi.woshi = 'ok';            _fangzi.keting = 'ok';            _fangzi.chufang = 'ok';            return _fangzi;        }    }    var gongren = new Gongren;    var baogongtou = new Baogongtou();    baogongtou.gaifangzi(gongren);    var myfangzi = gongren.jiaogong();    console.log(myfangzi);</script></body></html>

0 0
原创粉丝点击