zoukankan      html  css  js  c++  java
  • 前端设计模式——原型模式

    原型模式

    原型模式:通俗点讲就是创建一个共享的原型,并通过拷贝这些原型创建新的对象。

    在我看来,其实原型模式就是指定新创建对象的模型,更通俗一点来说就是我想要新创建的对象的原型是我指定的对象。

    最简单的原型模式的实现就是通过Object.create()。Object.create(),会使用现有的对象来提供新创建的对象的__proto__。

    let person = {
      name:'hello',
      age:24
    }
    
    let anotherPerson = Object.create(person);
    console.log(anotherPerson.__proto__)  //{name: "hello", age: 24}
    
    anotherPerson.name = 'world';  //可以修改属性
    anotherPerson.job = 'teacher';

    上面的代码使用Object.create()将person对象作为anotherPerson对象的原型,创建了anotherPerson。因此anotherPerson可以直接获得person的属性name,age等。

    另外,如果我们想要自己实现原型模式,而不是使用封装好的Object.create()函数,那么可以使用原型继承来实现

    function F(){
    }
    F.prototype.g = function(){}
    
    //G类继承F类
    
    function G(){
      F.call(this);
    }
    
    //原型继承
    function Fn(){}
    Fn.prototype = F.prototype;
    G.prototype = new Fn();
    
    G.prototype.constructor = G;

    上面的代码,学过js的应该都能看懂,没什么好解释的。
    原型模式总结
    原型模式就是创建一个指定原型的对象。如果我们需要重复创建某个对象,那么就可以使用原型模式来实现。

  • 相关阅读:
    linux学习笔记三
    linux学习笔记二
    linux学习笔记一
    Linux操作篇之配置DNS服务(二)
    Linux操作篇之配置DNS服务(一)
    Linux操作篇之配置DHCP服务
    Linux操作篇之配置SSH服务
    Linux操作篇之自动化安装操作系统(二)
    Linux操作篇之自动化安装操作系统(一)
    Linux的shell编程篇之环境变量配置文件
  • 原文地址:https://www.cnblogs.com/yinhaiying/p/10782171.html
Copyright © 2011-2022 走看看