function isDate(str) {
// フォーマット(YYYY/MM/DD)チェック
if (!str.match(/^\d{4}\/\d{2}\/\d{2}$/)) {
return false;
}
var yyyy = str.substr(0, 4);
var mm = str.substr(5, 2) - 1; //1月は0から始まる為 -1 する。
var dd = str.substr(8, 2);
// 月,日の妥当性チェック
if (mm >= 0 && mm <= 11 && dd >= 1 && dd <= 31) {
var vDt = new Date(yyyy, mm, dd);
if (isNaN(vDt)) {
return false;
} else if(vDt.getFullYear() == yyyy && vDt.getMonth() == mm && vDt.getDate() == dd) {
return true;
} else {
return false;
}
} else {
return false;
}
}
More than 5 years have passed since last update.
Register as a new user and use Qiita more conveniently
- You get articles that match your needs
- You can efficiently read back useful information
- You can use dark theme