zoukankan      html  css  js  c++  java
  • js 根据出生日期年月日 计算年龄

     1 <!DOCTYPE html>
     2 <html>
     3 
     4 <head>
     5   <meta charset="utf-8">
     6   <title></title>
     7 </head>
     8 
     9 <body>
    10   <h1></h1>
    11 </body>
    12 
    13 </html>
    14 <script language=javascript>
    15   function getAge(strAge) {
    16       const birArr = strAge.split("-");
    17       const birYear = Number(birArr[0]);
    18       const birMonth = Number(birArr[1]);
    19       const birDay = Number(birArr[2]);
    20 
    21       const today = new Date();
    22       const nowYear = today.getFullYear();
    23       const nowMonth = today.getMonth() + 1; //记得加1
    24       const nowDay = today.getDate();
    25       let returnAge;
    26 
    27       if (birArr === null) {
    28           return false
    29       };
    30       const d = new Date(birYear, birMonth - 1, birDay);
    31       console.log(d.getFullYear(), birYear, (d.getMonth() + 1), birMonth, d.getDate(), birDay);
    32       if (d.getFullYear() === birYear && (d.getMonth() + 1) === birMonth && d.getDate() === birDay) {
    33           if (nowYear === birYear) {
    34               returnAge = 0; // 
    35           } else {
    36               let ageDiff = nowYear - birYear; // 
    37               if (ageDiff > 0) {
    38                   if (nowMonth === birMonth) {
    39                       let dayDiff = nowDay - birDay; // 
    40                       if (dayDiff < 0) {
    41                           returnAge = ageDiff - 1;
    42                       } else {
    43                           returnAge = ageDiff;
    44                       }
    45                   } else {
    46                       let monthDiff = nowMonth - birMonth; // 
    47                       if (monthDiff < 0) {
    48                           returnAge = ageDiff - 1;
    49                       } else {
    50                           returnAge = ageDiff;
    51                       }
    52                   }
    53               } else {
    54                   return  "出生日期晚于今天,数据有误"; //返回-1 表示出生日期输入错误 晚于今天
    55               }
    56           }
    57           return returnAge;
    58       } else {
    59           return ("输入的日期格式错误!");
    60       }
    61   }
    62   const age = getAge("2021-07-05")
    63   console.log(age);
    64   document.getElementsByTagName('h1')[0].innerHTML = age
    65 </script>

    参考

    https://blog.csdn.net/u013746071/article/details/90903997

  • 相关阅读:
    菜鸟fork()创建进程新见解
    Linux下select函数的使用
    URAL 1029 Ministry
    URAL 1036 Lucky Tickets
    URAL 1031 Railway Tickets
    URAL 1028 Stars
    URAL 1032 Find a Multiple
    URAL 1037 Memory Management
    URAL 1033 Labyrinth
    URAL 1039 Anniversary Party
  • 原文地址:https://www.cnblogs.com/-roc/p/14980156.html
Copyright © 2011-2022 走看看