[マイ・ハート]簡単なEメール検証コードの作成


class User {
  constructor(name, email, password) {
    this.name = name;
    this.email = email;
    this.password = password;
  }
  
  buy(item) {
    conosole.log(`${this.name} buys ${item.name}`);
  }
  
  get email() {
    return this._email;
  }
  
  set email (address) {
    if(address.includes('@')) {
      this._email = address;
    } else {
      throw new Error('유효하지 않은 이메일 주소입니다.');
    }
  }
}

const item = {
  name: '에어팟맥스',
  price: '580,000원'
}

const sonny = new User('영산', '[email protected]', '12345');
sonny.email = 'zeromountain'; // Uncaught Error
sonny.email = '[email protected]' // OK
console.log(sonny); // {name: '영산', email: '[email protected]' password: '12345'}

カプセル化

  • setterメソッドを使用して電子メール検証を行います.
  • getterメソッドを使用して電子メールをインポートします.
  • パッケージは、直接オブジェクトにアクセスすることを防止します=>ボディーガードロール