Как проверить дату? - PullRequest
       4

Как проверить дату?

64 голосов
/ 28 апреля 2011

Я пытаюсь проверить, является ли дата действительной в том смысле, что если кто-то вводит 2/30/2011, то это должно быть неверно.

Как я могу сделать это с любой датой?

Ответы [ 12 ]

0 голосов
/ 30 мая 2017

Моя функция возвращает true, если допустимая дата, в противном случае возвращает false: D

function isDate  (day, month, year){
	if(day == 0 ){
		return false;
	}
	switch(month){
		case 1: case 3: case 5: case 7: case 8: case 10: case 12:
			if(day > 31)
				return false;
			return true;
		case 2:
			if (year % 4 == 0)
				if(day > 29){
					return false;
				}
				else{
					return true;
				}
			if(day > 28){
				return false;
			}
			return true;
		case 4: case 6: case 9: case 11:
			if(day > 30){
				return false;
			}
			return true;
		default:
			return false;
	}
}

console.log(isDate(30, 5, 2017));
console.log(isDate(29, 2, 2016));
console.log(isDate(29, 2, 2015));
0 голосов
/ 19 июня 2015
function isValidDate(year, month, day) {
        var d = new Date(year, month - 1, day, 0, 0, 0, 0);
        return (!isNaN(d) && (d.getDate() == day && d.getMonth() + 1 == month && d.getYear() == year));
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...