#TIL 07、Javascript Date()年齢のみ


개인 공부를 위해 작성했습니다

誕生日の入力を受け取ってこそ年齢を求めることができる。


アメリカを含め、世界のほとんどの国で誕生日を基準に年齢を計算しています.簡単に言えば、アメリカは生まれてから0歳で、誕生日を過ぎてからまだ1歳です.
逆に、韓国は生まれて1歳になり、年ごとに1歳を食べる.
例えば、アメリカでは1995年9月12日生まれ、1995年9月12日0歳、1996年9月12日1歳.それに比べて、韓国では1995年9月12日に1歳、1996年1月1日に2歳になった.
アメリカや他の国で使われている年齢計算法はわが国では満年齢と呼ばれている.

年を救いたいなら

  • 今日の日付の年のうち誕生日を除く年const year = now.getFullYear() - birth.getFullYear();
  • 今日の日付と誕生日の月を比較して、
  • 今日の日付と誕生日の日付を比較すると
  • の誕生日を過ぎた場合、年-1
  • function getWesternAge(birthday) {
      // console.log(birthday);
      const birth = new Date(birthday); 
      const now = new Date();
      // console.log(now);
      const year = now.getFullYear()- birth.getFullYear();
      const nowMonth = birth.getMonth()+1;
      // console.log(nowMonth);
      const birthMonth =  now.getMonth()+1;
      // console.log(birthMonth);
      const m = birthMonth - nowMonth;
      // console.log(m);
      if (m < 0 || (m === 0 && now.getDate() < birth.getDate())) { // 생일이 지났으면
        // now.getDate() < birth.getDate() 생일의 "일"이 오늘보다 크고
        // m === 0 오늘과 같은 월 이거나
        // 같은 월이면
        return year -1; // 생일이 안지났으니까 -1
      }
      return year; 
    }
    
    console.log(getWesternAge("1990-03-21"));
    🚩集中!getMonthメソッドが返す値は、現在の月より1小さいことに注意してください.
    ターゲット!
  • 問題が解決していないときは
  • をよく整理してください.
  • の規則に従って1つずつ符号化し、
  • いつか.結果は?!👀