この動画はメンバー限定動画です

全ての講座が
月額990円で学び放題

講座の情報を見る

TypeScript入門年齢を計算するプログラムを作成しよう②

記事を共有:

  • X
  • Pocket
  • クリップボードにコピー

それではいよいよ、生年月日を使って年齢を計算してみましょう。生年月日から年齢を計算するには、次のような手順を踏む必要があります。

  • 今年の年から誕生年を引く
  • もし、今年の誕生日がまだだったら、年齢を引く

とします(他の計算方法もあります)。これを「getAge」メソッドとして作っていきましょう。まずは、今日の日付を取得し、年を引き算します。

  getAge(): number {
    const now = new Date();
    let age = now.getFullYear() - this._birth.getFullYear();

誕生日は過ぎている場合は、これで正しい年齢が取得できますが、誕生日前の場合は1歳引かなければなりません。この計算は、次のような方法で行います。

  • 誕生日の「年」を今年の「年」に合わせて、「今年の誕生日」にする
  • 「今年の誕生日」と「今日の日付」を比べて、今日の日付が新しければ1歳引く

次のようなプログラムになります。

    // 誕生日前なら1歳引く
    let thisBirth = new Date(
      now.getFullYear(),
      this._birth.getMonth(),
      this._birth.getDate()
    );
    if (now < thisBirth) {
      age--;
    }

return age;

これで完成です。呼び出してみましょう。

const yoshiko = new Member("Yoshiko", new Date("2000-01-01"));
console.log(yoshiko.name);
console.log(yoshiko.age);

こうして、さまざまな情報を整理することができます。

前のレッスン