|
|
|||||
Определение високосного года
В общем, надо создать функцию, определяющую, високосный сейчас год, или нет.
|
|
|||||
"Вождь"
|
сейчас - не високосный, это я тебе точно говорю.
__________________
а мы летим орбитами путями не избитыми... |
|
|||||
Все, решение уже нашел.
|
|
|||||
[+1 23.05.11]
Регистрация: Dec 2001
Сообщений: 4,159
|
Цитата:
__________________
GIT d++ s++:++ a C++$ UB++ P++ L+ E+ W+++ N++ w++ O+ M V- t-- 5-- X+ R+++ tv- b+++ D++ |
|
|||||
Можно так:
function checkYear(year){ var number = year / 4; var st_number = number.toString(); var per = /\./; var f = st_number.match(per); if(f == null) alert( year + " год - " + "високосный год"); else alert(year + " год - " + "невисокосный год") } |
|
|||||
[+1 23.05.11]
Регистрация: Dec 2001
Сообщений: 4,159
|
Понятно. Классическое неправильное решение -- ты пребываешь в стандартном заблуждении, что каждый 4-й год является високосным.
Правильное решение: используя Date создать дату для 29.02.xxxx, где xxxx -- интересующий год. Затем у полученного объекта проверить номер месяца. Если все еще февраль (1), то год високосный. Если уже март (2) -- значит год не високосный и класс Date произвел коррекцию, преобразовав дату в 1 марта.
__________________
GIT d++ s++:++ a C++$ UB++ P++ L+ E+ W+++ N++ w++ O+ M V- t-- 5-- X+ R+++ tv- b+++ D++ |
|
|||||
Регистрация: Dec 2002
Адрес: Berlin
Сообщений: 444
|
Цитата:
|
|
|||||
[+1 23.05.11]
Регистрация: Dec 2001
Сообщений: 4,159
|
Проще всего -- описанным мной способом. Но если уж и проверять на кратность -- то явно не с помощью регулярных выражений.
__________________
GIT d++ s++:++ a C++$ UB++ P++ L+ E+ W+++ N++ w++ O+ M V- t-- 5-- X+ R+++ tv- b+++ D++ |
|
|||||
Цитата:
|
|
|||||
Регистрация: Dec 2002
Адрес: Berlin
Сообщений: 444
|
Можно так: делить на 4 (в цикле) и, пока результат деления больше 4, проверять, целое ли число.
|
Часовой пояс GMT +4, время: 01:07. |
|
« Предыдущая тема | Следующая тема » |
|
|