Цитата:
поэтому надо что бы сработало почти 100 пудова. |
Дак можно разбить сплитом, а потом объекту Data скормить, чтоб он посчитал.
Формат ввода такой: new Date(yr_num, mo_num, day_num[,hr_num, min_num, sec_num, ms_num]) |
Здесь не учтено следующее:
Например var date1 = '01/06/1988'; var date2 = '01/01/2008'; var date = new Date(); date.setTime(Date.parse(date1)); var year1 = date.getFullYear(); date.setTime(Date.parse(date2)); var year2 = date.getFullYear(); var age = year2 - year1; alert('Your age: '+ age); // ответ 10, а на деле 9.5 лет Надо учесть месяц и так же день месяца date.setTime(Date.parse(date1)); var year1 = date.getFullYear(), month1 = date.getMonth(), day1 = date.getDate(); date.setTime(Date.parse(date2)); var year2 = date.getFullYear(), month2 = date.getMonth(), day2 = date.getDate(); var age = year2 - year1; if ((month1 > month2) || // месяц рождения еще не наступил ((month1 == month2) && (day1 > day2))) { // месяц наступил, но дата еще на подошла age --; // уменьшим возраст в полных лет } alert('Your age: '+ age); // ответ 9 ПОЛНЫХ лет |
возраст количество полных лет на текущую дату
:write: тема конечно old
Цитата:
Цитата:
function yearsOld(c, b) { //если b неуказывать расчитает возраст кол-во полных лет на текущую дату var a = new Date; a.setTime(Date.parse(c)); var d = a.getFullYear(), e = a.getMonth(), f = a.getDate(); b ? a.setTime(Date.parse(b)) : a = new Date; return a.getFullYear() - d - (0 > (a.getMonth() - e || a.getDate() - f)) }; var date1 = "01/06/1988", date2 = "01/01/2008"; alert(yearsOld(date1, date2)); http://javascript.ru/forum/misc/1280...ozrasta-3.html |
Часовой пояс GMT +3, время: 06:31. |