jsにおけるgetterとsetterメソッドの実装
1004 ワード
Javaなどの多くの従来の言語では、属性およびメソッドを共有、プライベート、または保護されたものとして定義することができ、これらの属性およびメソッドへのアクセスを制限することができますが、パッケージ・メソッドを使用して読み書きすることができます.これらのパッケージ方法は通常getterとsetterと呼ばれ、これらの方法でオブジェクトインスタンスのプロパティ値を読み取りたり設定したりすることができます.しかしjavascriptではこれらのメソッドは定義されていません.次に、閉パッケージに使用する2つのメソッドを実装します. getter、setterメソッドvar Door=(function(){function Door(){};var_isLocked=false;var_isAlarmed=false;var_alarmMessage="Alarm activated!";
function _alarm(){
_isAlarmed = true;
alert(_alarmMessage);
}
function _disableAlarm(){
_isAlarmed = false;
}
Door.prototype.lock = function(){
_islocked = true;
_alarm();
};
Door.prototype.unlock = function(){
_islocked = false;
_disableAlarm();
};
// getter
Door.prototype.getIsLocked = function(){
return _islocked;
};
// setter
Door.prototype.setAlarmMessage =function(message){
_alarmMessage = message;
};
return Door;
})();