Prototypeでクラスの継承をやってみた。

  • ベースクラス
// コンストラクタ
var Car = function() {};
// プロトタイプの定義
Car.prototype = {
  chassis : null,
  engine : function(f) {
    // 処理
  },
  handle : function(a) {
    // 処理
  },
  breaking : function(b) {
    // 処理
  }
};
  • サブクラス
// コンストラクタ
var TurboChargedCar = function() {};
// 継承
TurboChargedCar.prototype = new Car();
// 拡張
TurboChargedCar.prototype.turbo = function(e) {
  // 処理
};
// オーバーライド
TurboChargedCar.prototype.engine = function(f) {
  // 処理
};

こんな感じ。