javascript设计模式与开发实践

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript设计模式与开发实践相关的知识,希望对你有一定的参考价值。

1. js面向对象6种形式(详情)   

技术分享
<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title></title>
</head>
<body>
<script>
    // 1. 基于object的对象
    var person=new Object();
    person.name=my name;
    person.getName= function () {
        return this.name+ is aa;
    }
    console.log("person.getName: "+person.getName());
    //2.对象字面量方式
    var person2={
        name:person2,
        getName: function () {
            return this.name+ is bb;
        }
    }
    console.log("person2.getName: "+person2.getName());
    //3.工厂模式
    function createPerson3(name,age){
        var o=new Object();
        o.name=name;
        o.age=age;
        o.getName=function(){
            return this.name+ is cc;
        }
        return o;//使用return返回生成的对象实例
    }
    var person3=createPerson3(person3,12);
    console.log("person3.getName: "+person3.getName());
    // 4.构造函数模式
    function Person4(name,age){
        this.name=name;
        this.age=age;
        this.getName= function () {
            return this.name+" is dd";
        }
    }
    var person4=new Person4(person4,22);
    console.log("person4.getName: "+person4.getName());
    //5 原型模式
    function Person5(){

    }
    Person5.prototype.name=person5;
    Person5.prototype.age=22;
    Person5.prototype.getName= function () {
        return this.name+" is ee";
    }
    var person5=new Person5();
    console.log("person5.getName(): "+person5.getName());
    // 6 组合构造函数及原型模式
    function Person6(name,age){
        this.name=name;
        this.age=age;
    }
    Person6.prototype={
        construct:Person6,//原型字面量方式会将对象的constructor变为Object,此外强制指回Person
        getName: function () {
            return this.name+" is ff";
        }
    }
    var person6=new Person6(person6,22);
    console.log("person6.getName(): "+person6.getName());
</script>
</body>
</html>
View Code

 

以上是关于javascript设计模式与开发实践的主要内容,如果未能解决你的问题,请参考以下文章

JavaScript设计模式与开发实践 面向对象

《JavaScript设计模式与开发实践》—— 策略模式

JavaScript设计模式与开发实践---读书笔记

javascript设计模式与开发实践阅读笔记——命令模式

javascript设计模式与开发实践阅读笔记——策略模式

JavaScript设计模式与开发实践:惰性函数