本文介绍: 读《Js设计模式与开发实践》

原型模式的实现关键,是语言本身是否提供了clone方法。ECMAScript 5提供了Object.create方法,可以用来克隆对象

        var Plane = function(){
            this.blood = 100;
            this.attackLevel = 1;
            this.defenseLevel = 1;
        };

        var plane = new Plane();
        plane.blood = 500;
        plane.attackLevel = 10;
        plane.defenseLevel = 7;

        var clonePlane = Object.create( plane );
        console.log( clonePlane.blood )         //输出500
        console.log( clonePlane.attackLevel )   //输出10
        console.log( clonePlane.defenseLevel )  //输出7

在不支持Object.create方法的浏览器中,则可以使用以下代码

        Object.create = Object.create || function( obj ){
            var F = function(){};
            F.prototype = obj;
            return new F();
        }

原型模式不仅仅是一种设计模式,也是一种编程范型。JavaScript就是使用原型模式来搭建整个面向对象系统的。在JavaScript语言中不存在类的概念,对象也并非从类中创建出来的,所有的JavaScript对象都是从某个对象上克隆而来的。

原文地址:https://blog.csdn.net/weixin_43392673/article/details/135866886

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。

如若转载,请注明出处:http://www.7code.cn/show_63171.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注