基类
var BaseUnit = function(config) { var me = this; me.init(); };
子类1:
var ByteUnit = function(config) { var me = this; BaseUnit.apply(me, arguments); }; ByteUnit.prototype = { constructor: ByteUnit, init: function(){ ByteUnit.prototype.conversionTable = {}; // 对ByteUnit.prototype.conversionTable进行操作 } } Util.inherit(ByteUnit, BaseUnit);
子类2
var FrequenceUnit = function(config) { var me = this; FrequenceUnit.instance = me; }; FrequenceUnit.prototype = { constructor: FrequenceUnit, init: function(){ FrequenceUnit.prototype.conversionTable = {} // 对FrequenceUnit.prototype.conversionTable进行操作 } } Util.inherit(FrequenceUnit, BaseUnit);
其实,子类中conversionTable的数据结构和处理方式一摸一样。
只是,因为它是静态属性,所以定义在每个子类的prototype上,并且每个类中都实现一次对conversionTable的处理方法。
想把conversionTable属性和操作,放到基类中,如何做???
本文出自 “技术人生” 博客,请务必保留此出处http://wangyuelucky.blog.51cto.com/1011508/1688650
原文地址:http://wangyuelucky.blog.51cto.com/1011508/1688650