1: Рассчитайте разницу в количестве дней между двумя датами.
например:
стр1 = "20 января 2002 г."
стр2 = "11.10.2002"
Как рассчитать количество дней между str1 и str2 с помощью javaScript?
Скопируйте код кода следующим образом:
<html>
<голова>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title></title>
</голова>
<тело>
<button onClick="btnCount_Click()">Рассчитать разницу в днях</button>
<script Language="JavaScript">
функция btnCount_Click(){
с1 = "2002-1-10"
с2 = "2002-10-1"
предупреждение (DateDiff (s1, s2))
}
//Функция для расчета разницы в днях, универсальная
function DateDiff(sDate1, sDate2){ //sDate1 и sDate2 имеют формат 18 декабря 2002 г.
вар aDate, oDate1, oDate2, iDays
aDate = sDate1.split("-")
oDate1 = новая дата(aDate[1] + '-' + aDate[2] + '-' + aDate[0]) //Преобразовать в формат 18.12.2002
aDate = sDate2.split("-")
oDate2 = новая дата(aDate[1] + '-' + aDate[2] + '-' + aDate[0])
iDays = parseInt(Math.abs(oDate1 - oDate2)/1000/60/60/24) //Конвертируем разницу в миллисекундах в дни
вернуть iDays
}
2: Рассчитайте дату через определенное количество дней.
В JavaScript вычислите, какая дата наступит через несколько дней после сегодняшней даты. Это гораздо менее удобно, чем в .Net. Проблему может решить функция. Эта проблема беспокоила меня какое-то время, и, наконец, проблема была решена благодаря представлению пользователя сети. Опубликуйте это и поделитесь.
Скопируйте код кода следующим образом:
<script Language="javascript" type="text/javascript">
вар startDate = новая дата (); вар intValue = 0;
вар endDate = ноль;
intValue = startDate.getTime(); intValue += 100 * (24 * 3600 * 1000);
endDate = новая дата (intValue);
alert (endDate.getFullYear()+"-"+ (endDate.getMonth()+1)+"-"+ endDate.getDate());
</скрипт>
Цифра 100 выше представляет собой дату, произошедшую через 100 дней, которую вы можете изменить. Date.getTime() в JS может поддерживать только даты после 1970.01.01, а месяц — от 0 до 11, что немного отличается, поэтому избегайте этого; Конечно, вы также можете рассчитывать даты после определенной даты.
Скопируйте код кода следующим образом:
<script Language="javascript" type="text/javascript">
var startDate = новая дата (2007, (8-1), 1, 10, 10, 10);
вар intValue = 0;
вар endDate = ноль;
intValue = startDate.getTime(); intValue += 100 * (24 * 3600 * 1000);
endDate = новая дата (intValue);
alert (endDate.getFullYear()+"-"+ (endDate.getMonth()+1)+"-"+ endDate.getDate());
</скрипт>