calAge.js 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. export default function getAge(strAge) {
  2. var birArr = strAge.split("-");
  3. var birYear = birArr[0];
  4. var birMonth = birArr[1];
  5. var birDay = birArr[2];
  6. d = new Date();
  7. var nowYear = d.getFullYear();
  8. var nowMonth = d.getMonth() + 1; //记得加1
  9. var nowDay = d.getDate();
  10. var returnAge;
  11. if (birArr == null) {
  12. return false
  13. };
  14. var d = new Date(birYear, birMonth - 1, birDay);
  15. if (d.getFullYear() == birYear && (d.getMonth() + 1) == birMonth && d.getDate() == birDay) {
  16. if (nowYear == birYear) {
  17. returnAge = 0; //
  18. } else {
  19. var ageDiff = nowYear - birYear; //
  20. if (ageDiff > 0) {
  21. if (nowMonth == birMonth) {
  22. var dayDiff = nowDay - birDay; //
  23. if (dayDiff < 0) {
  24. returnAge = ageDiff - 1;
  25. } else {
  26. returnAge = ageDiff;
  27. }
  28. } else {
  29. var monthDiff = nowMonth - birMonth; //
  30. if (monthDiff < 0) {
  31. returnAge = ageDiff - 1;
  32. } else {
  33. returnAge = ageDiff;
  34. }
  35. }
  36. } else {
  37. return "出生日期晚于今天,数据有误"; //返回-1 表示出生日期输入错误 晚于今天
  38. }
  39. }
  40. return returnAge;
  41. } else {
  42. return ("输入的日期格式错误!");
  43. }
  44. }