ホームページ >ウェブフロントエンド >jsチュートリアル >vbs_time および date の DateAdd() 関数を模倣する JavaScript コード

vbs_time および date の DateAdd() 関数を模倣する JavaScript コード

WBOY
WBOYオリジナル
2016-05-16 19:10:211384ブラウズ

プロジェクトではカレンダーを使用する必要があり、.net カレンダー コントロールは重すぎるため、カレンダーのコア関数は DateAdd() であることがわかりました。 vbscript と違って js は思ったより面倒ですが、dateadd を簡単に実行できますが、後で setFull Year() や setDate() などの組み込み関数を使用して、js バージョンの dateadd() を組み合わせることにしました。 コードは次のとおりです。 :

コードをコピー コードは次のとおりです。

function DateAdd(interval, number,date){ // 日付は時間オブジェクトまたは文字列の場合、後者の場合、形式は yyyy-mm-dd hh:mm:ss でなければなりません。区切り文字は可変です。 「2006 年 12 月 29 日 16:01:23」も有効です。
number = parseInt(number);
if (typeof(date)=="string"){
date = date. D/);
--date[1];
eval("var date = new Date(" date.join(",") ")");
}
if (typeof) (date)=="object"){
var date = date
}
switch(interval){
case "y": date.setFull Year(date.getFullyear() 数値 ); ;
case "m": date.setMonth(date.getMonth() 数値);
case "d": date.setDate(date.getDate() 数値); w": date.setDate(date.getDate() 7*number); ブレーク;
ケース "h": date.setHours(date.getHour() 数値); ブレーク;
ケース "n ": 日付.setMinutes(date.getMinutes() 数値); ブレーク
case "s": date.setSeconds(date.getSeconds() 数値); () 数値); Break;
}
return date;



この関数は、3 つのパラメーターを使用して、vbscript の dateadd 関数を最大限に模倣しています。 、最初のパラメータは変更する時間間隔で、年、月、日、週、時、分、秒、ミリ秒(拡張)を指定できます。3 番目のパラメータは時間オブジェクトまたは文字列です(形式は 2006 である必要があります)。 -12-29 14:32:57 または 2006 年 12 月 29 日 14:32:57)、関数の戻り値は新しい時刻オブジェクトです。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。