私はゲッター&セッターをプロトタイプパターン内で使用したいと思います。私はObject.definePropertyをコンストラクタに入れてこれを行いました。ゲッターとセッターのプロトタイプパターン
私はちょうど私が本当のゲッター/セッター
てプロパティにアクセスするしかし、これにはないようにプロトタイプオブジェクト外のDefinePropertyを持つの簡潔さが好きで、プロトタイプオブジェクトでgetWhatever()メソッドを作成することができることを知っています私にはうってつけです。より良い方法がありますか?
function Person(name) {
this._name = name;
Object.defineProperty(this, 'name', {
get: function() {
return this._name;
}
});
}
plunk:https://plnkr.co/edit/h3tgJjQBGspepdho3lqJ?p=preview
理由だけコンストラクタ外部プロトタイプにゲッターを定義していない: 'Object.defineProperty(Person.prototype、 '名前'、{...});' – Teemu
も '_name'せ代わりに使用することを検討してください'this._name'という方法では名前はオブジェクトの外側で変更できません:-) – Neal
コードレビューに属している可能性があるので、この質問を閉じるために投票しています – Neal