In JavaScript è semplice validare una data di nascita.
Possiamo usare la seguente soluzione:
'use strict';
const validateBirthday = (birthday) => {
if(!/^\d{4}-\d{2}-\d{2}$/.test(birthday)) {
return -1;
}
let parts = birthday.split('-');
let now = new Date();
let Y = parseInt(parts[0], 10);
let YY = now.getFullYear();
let m = ( parts[1][0] === '0') ? parseInt(parts[1][1], 10) : parseInt(parts[1], 10);
let d = ( parts[2][0] === '0') ? parseInt(parts[2][1], 10) : parseInt(parts[2], 10);
if(Y >= YY) {
return -1;
}
if( (YY - Y) < 18 || (YY - Y) > 80) {
return -1;
}
if( m < 1 || m > 12) {
return -1;
}
if( d < 1 || d > 31 ) {
return -1;
}
return 0;
};