zoukankan      html  css  js  c++  java
  • javascript原型模式发展历程

    // 工厂模式

    function Person(name,age){
                var o = new Object();
                o.name=name;
                o.age=age;
                o.sayName=function(){
                    alert(o.name)
                }
                return o
            }
    
            var o1=Person('lele',5)
            
            var o2=Person('mama',31)

    // 构造函数模式(能够标识对象属于哪一种类型,但是函数没有复用)

    function Person(name,age){
                this.name=name;
                this.age=age;
                this.sayName=function(){
                    alert(this.name)
                }
            }
    
            var o3=new Person('lele',5)
            console.log(o3)
            console.log(o3.constructor==Person)
            var o4=new Person('mama',31)
            console.log(o3.sayName==o4.sayName)

    // 原型模式(不能传递初始化参数,包含了引用类型的共享)

    function A(){}
            A.prototype.name='lele'
            A.prototype.age=5
            A.prototype.sayName=function(){
                alert(this.name)
            }
            var o5 = new A();
            var o6 = new A();
            console.log(o5.sayName==o6.sayName)

    // 组合是用构造函数模式和原型模式(能够传递参数,封装性不好,构造函数独立于)

     function B(name,age){
                this.name=name;
                this.age=age;
            }
            B.prototype.sayName=function(){
                alert(this.anme)
            }
    
            var o7=new B('lele',5)

    // 动态原型模式

    function C(name,age){
                this.name=name;
                this.age=age;
                if(typeof this.sayName != 'function'){
                    C.prototype.sayName=function(){
                        alert(this.name)
                    }
                }
            }
            var o8=new C('lele',6)

    // class

  • 相关阅读:
    POJ--3667 Hotel
    Dragon Balls
    Popular Cows
    Tunnel Warfare [HDU--1540]
    CompletableFuture
    Future<V>
    分布式架构知识体系
    异步I/O和非阻塞I/O(轮询)
    同步异步阻塞非阻塞及并发级别
    volatile
  • 原文地址:https://www.cnblogs.com/zhuMother/p/12200480.html
Copyright © 2011-2022 走看看