根据生日计算年龄

18393910396 · · 3498 次点击
我也在写一个计算年龄的代码段,与君分享(PS:需求是不用精确到日) ``` if PbBirthday != "" { birthday := strings.Split(order.PbBirthday,"-") if len(birthday) < 3 { return nil,errors.New("出生日期格式解析错误") } birYear,_ := strconv.Atoi(birthday[0]) birMonth,_ := strconv.Atoi(birthday[1]) age := time.Now().Year() - birYear if int(time.Now().Month()) < birMonth { age-- } return age,nil } else { return nil,errors.New("出生日期为空") } ```
#2
更多评论
1.一年又不是一定是365天 2.golang有time.duration类型,转成时间戳再减是什么骚操作…… 3.出错了返回0又是什么骚操作…… 最后,计算年龄这一块不是应该算年的差值,然后根据月份的大小进行调整就好了么……
#1
你说的有道理。我这个方法确实不太准确
#3