根據出生日期換算歲
阿新 • • 發佈:2020-10-21
getAge(strAge) { let birArr = strAge.split("-"); let birYear = birArr[0]; let birMonth = birArr[1]; let birDay = birArr[2]; d = new Date(); var nowYear = d.getFullYear(); var nowMonth = d.getMonth() + 1; //記得加1 var nowDay = d.getDate(); var returnAge; if (birArr == null) { return false }; var d = new Date(birYear, birMonth - 1, birDay); if (d.getFullYear() == birYear && (d.getMonth() + 1) == birMonth && d.getDate() == birDay) {if (nowYear == birYear) {//同年 則為0歲 returnAge = 0; } else { var ageDiff = nowYear - birYear; //年之差 if (ageDiff > 0) { if (nowMonth == birMonth) { var dayDiff = nowDay - birDay; ////日之差 if (dayDiff < 0) { returnAge = ageDiff - 1; } else { returnAge = ageDiff; } } else { var monthDiff = nowMonth - birMonth; // //月之差 if (monthDiff < 0) { returnAge = ageDiff - 1; } else { returnAge = ageDiff; } } } else { return "出生日期晚於今天,資料有誤"; //返回-1 表示出生日期輸入錯誤 晚於今天 } } return returnAge; } else { return ("輸入的日期格式錯誤!"); } },