⊗jsOpBsGSA 18 of 60 menu

JavaScriptにおけるOOPのセッターとゲッターの利点

前のレッスンでは、それぞれのプロパティに対してゲッターとセッターを作成しました。 なぜそのような複雑さが必要なのか、実際にはプロパティをプライベートではなくパブリックにすれば同じ効果が得られるのではないか、という疑問が生じるかもしれません。

問題は、ゲッターとセッターには利点があることです:プロパティにアクセスする前に、いくつかのチェックを実行することができます。 たとえば、私たちの場合、名前と姓を書き込むときに、新しい値が空の文字列ではないことを確認できます:

class User { #name; #surn; setName(name) { if (name.length > 0) { this.#name = name; } else { throw new Error('名前が正しくありません'); } } setSurn(surn) { if (surn.length > 0) { this.#surn = surn; } else { throw new Error('姓が正しくありません'); } } getName() { return this.#name; } getSurn() { return this.#surn; } }

これがどのように機能するか確認してみましょう。 まず、クラスのオブジェクトを作成します:

let user = new User;

次に、正しい値を書き込んでみます:

user.setName('john');

そして今度は、正しくない値を書き込んでみます:

user.setName(''); // エラー

Employee クラスの年齢セッターで、 年齢が 0 から 120 の間でなければならないというチェックを行ってください。

Employee クラスの給与ゲッターで、 給与を読み取るときに、その値の最後にドル記号が追加されるようにしてください。

日本語
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItalianoქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
当サイトでは、サイトの動作、分析、パーソナライゼーションのためにクッキーを使用しています。 データ処理はプライバシーポリシーに従って行われます。
すべて受け入れる 設定 拒否