验证手机号一、根据身份证计算年龄、性别、出生年月
1、根据身份证号获得出生年月
export function getBirthdayByIdCard(idCard) {
if (idCard.length === 15) {
return ['19' + idCard.substr(6, 2), idCard.substr(8, 2), idCard.substr(10, 2)].join('-')
} else if (idCard.length === 18) {
return [idCard.substr(6, 4), idCard.substr(10, 2), idCard.substr(12, 2)].join('-')
}
return ''
}
2、根与身份证号获取性别
export function getSexByIdCard(idCard){
if (idCard.length === 15) {
return ['女', '男'][idCard.substr(14, 1) % 2]
} else if (idCard.length === 18) {
return ['女', '男'][idCard.substr(16, 1) % 2]
}
return ''
}
3、根据身份证号计算年龄
export function getAgeByIdCard(idCard){
const sexAndAge = {}
//获取用户身份证号码
const userCard = idCard
//如果用户身份证号码为undefined则返回空
if (!userCard) {
return sexAndAge
}
// 获取出生日期
const yearBirth = userCard.substring(6, 10)
const monthBirth = userCard.substring(10, 12)
const dayBirth = userCard.substring(12, 14)
// 获取当前年月日并计算年龄
const myDate = new Date()
const monthNow = myDate.getMonth() + 1
const dayNow = myDate.getDate()
let age = myDate.getFullYear() - yearBirth
if (monthNow < monthBirth || (monthNow == monthBirth && dayNow < dayBirth)) {
age--
}
// 得到年龄
sexAndAge.age = age
return sexAndAge.age
}
二、正则验证相关
自定义验证方法
data() {
return {
rules: {
userName: