1: 2 つの日付の差の日数を計算します。
例えば:
str1 = "2002-01-20"
str2 = "2002-10-11"
JavaScriptを使用してstr1とstr2の間の日数を計算するにはどうすればよいですか?
次のようにコードをコピーします。
<html>
<頭>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<タイトル></タイトル>
</head>
<本文>
<button onClick="btnCount_Click()">日数の差を計算する</button>
<スクリプト言語="JavaScript">
関数 btnCount_Click(){
s1 = "2002-1-10"
s2 = "2002-10-1"
アラート(日付差(s1,s2))
}
//日数の差を計算する関数、汎用
function DateDiff(sDate1, sDate2){ //sDate1 と sDate2 は 2002-12-18 形式です
var aDate、oDate1、oDate2、iDays
aDate = sDate1.split("-")
oDate1 = new Date(aDate[1] + '-' + aDate[2] + '-' + aDate[0]) //12-18-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">
var startDate = 新しい日付 () var intValue = 0;
var endDate = null;
intValue = startDate.getTime(); intValue += 100 * (24 * 3600 * 1000);
endDate = 新しい日付 (intValue);
アラート (endDate.getFull Year()+"-"+ (endDate.getMonth()+1)+"-"+ endDate.getDate());
</script>
上の 100 は 100 日後の日付を表しており、これは変更できます。 JS の Date.getTime() は 1970.01.01 以降の日付のみをサポートし、月は 0 ~ 11 ですが、これは少し異なるため、避けてください。もちろん、特定の日付以降の日付を計算することもできます。
次のようにコードをコピーします。
<script language="javascript" type="text/javascript">
var startDate = 新しい日付 (2007, (8-1), 1, 10, 10, 10);
var intValue = 0;
var endDate = null;
intValue = startDate.getTime(); intValue += 100 * (24 * 3600 * 1000);
endDate = 新しい日付 (intValue);
アラート (endDate.getFull Year()+"-"+ (endDate.getMonth()+1)+"-"+ endDate.getDate());
</script>