下边是我在工作中遇到的一个关于计算一个人周岁的问题分为2种情况
第一种情况是生日当天加1岁
第二种情况是生日过后那天加1岁
本人为刚入行的小朋友,如果觉得有问题或者更见的问题患有留言并提意见

1.第一种情况是生日当天加1岁

//strBirthday为YYYY-MM-DD的格式function jsGetAge(strBirthday) {var returnAge;var strBirthdayArr;if (_.isString(strBirthday)) {strBirthdayArr = strBirthday.split("-");} else if (_.isDate(strBirthday)) {strBirthdayArr = [strBirthday.getFullYear(),strBirthday.getMonth() + 1,strBirthday.getDate()];}var birthYear = strBirthdayArr[0];var birthMonth = strBirthdayArr[1];var birthDay = strBirthdayArr[2];var d = new Date();var nowYear = d.getFullYear();var nowMonth = d.getMonth() + 1;var nowDay = d.getDate();if (nowYear == birthYear) {returnAge = 0;//同年 则为0岁} else {var ageDiff = nowYear - birthYear; //年之差if (ageDiff > 0) {console.log(birthYear,birthMonth,birthDay,'现在',nowYear,nowMonth,nowDay,'年之差',ageDiff)if (nowMonth == birthMonth) {var dayDiff = nowDay - birthDay;//日之差console.log(dayDiff);// if (dayDiff <= 0) {if (dayDiff < 0) {returnAge = ageDiff - 1;} else if(dayDiff > 0){returnAge = ageDiff+1;} else if(dayDiff == 0){returnAge = ageDiff;}} else {var monthDiff = nowMonth - birthMonth;//月之差if (monthDiff < 0) {returnAge = ageDiff - 1;} else {returnAge = ageDiff;}}} else {returnAge = -1;//返回-1 表示出生日期输入错误 晚于今天}}return returnAge;//返回周岁年龄},

2.第二种情况是生日过后那天加1岁

function jsGetAge(strBirthday) {var returnAge;var strBirthdayArr;if (_.isString(strBirthday)) {strBirthdayArr = strBirthday.split("-");} else if (_.isDate(strBirthday)) {strBirthdayArr = [strBirthday.getFullYear(),strBirthday.getMonth() + 1,strBirthday.getDate()];}var birthYear = strBirthdayArr[0];var birthMonth = strBirthdayArr[1];var birthDay = strBirthdayArr[2];var d = new Date();var nowYear = d.getFullYear();var nowMonth = d.getMonth() + 1;var nowDay = d.getDate();if (nowYear == birthYear) {returnAge = 0;//同年 则为0岁} else {var ageDiff = nowYear - birthYear; //年之差if (ageDiff > 0) {if (nowMonth == birthMonth) {var dayDiff = nowDay - birthDay;//日之差// if (dayDiff <= 0) {if (dayDiff < 0) {returnAge = ageDiff - 1;} else {returnAge = ageDiff;}} else {var monthDiff = nowMonth - birthMonth;//月之差if (monthDiff < 0) {returnAge = ageDiff - 1;} else {returnAge = ageDiff;}}} else {returnAge = -1;//返回-1 表示出生日期输入错误 晚于今天}}return returnAge;//返回周岁年龄},

周岁计算方法(当天加一岁 与 过了当日加一岁)相关推荐

  1. oracle自动加一天,如何将Oracle 当前日期加一天、一分钟

    在Oralce中我发现有add_months函数,加天数N可以用如下方法实现,select sysdate+N from dual sysdate+1 加一天 sysdate+1/24 加1小时 sy ...

  2. uniapp实现瀑布流懒加载实现和无限上拉加载更多

    效果图: 说明: 函数说明:传入一个数组,循环获取图片高度,会根据把原数组拆分成两个数组,放在两列,                 计算单列累计高度,对比高度值的大小,实现瀑布流的布局,       ...

  3. 2020年,冯唐49岁:我给20、30岁IT职场年轻人的建议

    点击"技术领导力"关注∆  每天早上8:30推送 作者| Mr.K   编辑| Emma 来源| 微信公众号 技术领导力(ID:jishulingdaoli) 前天的推文<冯 ...

  4. 35岁危机,如何解?40岁财务自由,可能吗?

    新的一年,新的开始. 新年伊始,首先需要思考解决的问题是:35岁危机. 入行之前,就知道IT互联网界有个说法:程序员是个青春饭,35岁就很难再找到工作了. 这几年,思考问题,换了个角度,从悲观者角度去 ...

  5. 我们能在22岁的身体中活到130岁?人类离“长生不老”有多远

    在昨天的文章中,硅谷洞察就脑机接口.新药研发.无性生殖等多个话题专访了<硅谷百年史>的作者皮埃罗·斯加鲁菲(Piero Scaruffi).在今天的(下)篇中,皮埃罗将继续就液体活检.基因 ...

  6. FPGA加载bit文件可以工作,加载mcs不能工作的原因

    FPGA加载bit文件可以工作,加载mcs不能工作的原因 1: 使用ISE的MPACT用bit文件生成mcs的时候设置错了应该,检查一下FLASH型号,容量,位宽都有没有选对. 2: mcs文件的大小 ...

  7. python怎么加载图片-python爬虫--图片懒加载

    图片懒加载 是一种反爬机制,图片懒加载是一种网页优化技术.图片作为一种网络资源,在被请求时也与普通静态资源一样,将占用网络资源,而一次性将整个页面的所有图片加载完,将大大增加页面的首屏加载时间.为了解 ...

  8. 5 加盐_工业软水处理器定期加盐的标准

    工业软水机是利用离子交换技术软化原水,通过自动控制阀实现树脂自动再生,软化水适用于浴室.厨房.洗衣.暖气.锅炉.中央空调设备供水等广大领域.盐是软化水设备在使用的过程中不可缺少的,树脂要与盐发生反映, ...

  9. 【五线谱】五线谱的线与间 ( 五线谱中的 第N线与第N间 | 五线谱上的 上加N线与上加N间 | 五线谱下的 下加N线与下加N间 | 高音谱号下加一线 等同于 低音谱号上加一线 )

    文章目录 一.五线谱中的 线 ( 第 N 线 ) 与 间 ( 第 N 间 ) 二.五线谱上的 线 ( 上加 N 线 ) 与 间 ( 上加 N 间 ) 三.五线谱下的 线 ( 下加 N 线 ) 与 间 ...

最新文章

  1. 【CTF】实验吧 古典密码
  2. 搞科研不如当老师香?南科大助理教授“跳槽”深圳中学当老师
  3. Java数据结构和算法(十)——二叉树
  4. mysql迁移之后读取速度变慢_如何解决数据库迁移之后变慢的问题
  5. C# DataRow数组转换为DataTable
  6. [css] 你知道CSS中的字母“C“代表什么吗?
  7. python输入圆的半径公式_[图文]铁路曲线正矢的计算公式
  8. View与Model绑定注意事项 (视图无数据显示)
  9. AcWing 851. spfa求最短路(解决负边权最短路)
  10. (转)git clone: error: RPC failed; result=18, HTTP code = 200 解决办法
  11. Android 实现书籍翻页效果
  12. Flume自定义文件命名格式(RollFileSink)
  13. Openstack+Opencontrail安装与部署初级教程
  14. xp系统开机自检很久_xp系统电脑开机硬盘自检时间很长如何处理
  15. 无利不起早:理性看待IBM倾“芯”中国
  16. Python数据可视化(微课版)-简介
  17. 解决阿里云CentOS8 yum安装appstream报错,更新yum后无法makecache的问题
  18. gitea 1.16.8 忘记口令的处理思路
  19. L2-048 寻宝图(25分)
  20. 汉字对应的unicode编码

热门文章

  1. 思维造物IPO:从知识付费到终身教育,罗振宇的新故事可行吗?
  2. 「津津乐道播客」#201. 用声音聚众,聊聊这个不寻常的春节
  3. python连接CAD,获取坐标,在坐标上插入想要的文字。
  4. IDEA基本设置 | 自动补全 | 快捷键列表 | 使用技巧 | 调试
  5. 【MySQL教程(一)】安装和初步使用
  6. 玩转门店管理新方法,促进营收利润加倍
  7. get请求400错误 vue_IE浏览器http请求,中文传参报400错误-解决方法
  8. 利用sketch制作gif
  9. 数据库在各行各业的应用实践
  10. IPv4用的好好的,为什么我们要换IPv6?