イシュー
Date型から YYYY/MM/DDの文字列を作成する
var dt = new Date();
var value = dt.getFullYear()+'/'+('0'+(dt.getMonth()+1)).slice(-2)+'/'+('0'+dt.getDate()).slice(-2);
日付チェック関数
var isDate = function(inputDate) {
var data = inputDate;
if (data == '') {
return true;
}
var rxDatePattern = RegExp('^(\\d{4})(\\/|-)(\\d{1,2})(\\/|-)(\\d{1,2})$');
var dtArray = data.match(rxDatePattern);
if (dtArray == null) {
return false;
}
dtYear = dtArray[1];
dtMonth = dtArray[3];
dtDay = dtArray[5];
if (dtMonth < 1 || dtMonth > 12) {
return false;
} else if (dtDay < 1 || dtDay > 31) {
return false;
} else if ((dtMonth == 4 || dtMonth == 6 || dtMonth == 9 || dtMonth == 11) && dtDay == 31) {
return false;
} else if (dtMonth == 2) {
var isleap = (dtYear % 4 == 0 && (dtYear % 100 != 0 || dtYear % 400 == 0));
if (dtDay > 29 || (dtDay == 29 && !isleap)) {
return false;
}
}
return true;
}
数字8桁だったらYYYY/MM/DD に変換
var re = /^[0-9]{8}$/;
var str = '201711123';
var date = (re.test(str)) ? str.substr(0,4)+'/'+str.substr(4,2)+'/'+str.substr(6,2) : str;