JavaScript高級プログラム設計読書ノートの十ローカルオブジェクトDate日付

6348 ワード

作成
var d=new Date();
注意したいのは、JavaScriptの月の値は0から11(0は1月を表します)です.
日付と時間の設定
日付と時刻の設定には2つの方法があります.
1、1970年1月1日午前12時までのミリ秒数のみを宣言します.
a、直接使用距離は1970年1月1日午前12時のミリ秒数です.
var d=new Date(0)
b、パース方法:
パースメソッドは、文字列をパラメータとして受け入れ、文字列を日付値に変換して、ミリ秒の数を返します.
例えば、2012年2月27日にDateオブジェクトを作成します.
var d=new Date(Date.parse(Feb 27,2012);
パス方法の文字列が日付に変換できない場合、この関数はNaNに戻ります.
c、UTC方法:
UTC方法も日付のミリ秒表現に戻りますが、パラメータは年、月、日、時、分、秒、ミリ秒で、年、月は必須で、他はオプションです.
例えば、2012年2月27日にDateオブジェクトを作成します.
var d=new Date(Date.UTC(2012,1,27);
2、UTC方法で受けるパラメータを直接声明する
var d=new Date(2012,1,27);
パラメータ規則はUTC法と同じです.
Date類の方法
Date類の方法は以下の通りです.
方法
説明
FF
IE
Date()
その日の日付と時間を返します.
1
3
get Date()
Dateオブジェクトから一ヶ月のある日(1~31)を返します.
1
3
getDay()
Dateオブジェクトから一週間のうちのある日(0~6)を返します.
1
3
get Month()
Dateオブジェクトから月(0~11)に戻ります.
1
3
get FulYear()
Dateオブジェクトから4桁の数字で年を返します.
1
4
getYear()
getFulYear()メソッドを使って代替してください.
1
3
get Hours()
Dateオブジェクトの時間(0~23)を返します.
1
3
get Minutes()
Dateオブジェクトの分(0~59)を返します.
1
3
get Seconds()
Dateオブジェクトの秒数(0~59)を返します.
1
3
get Milliseconds()
Dateオブジェクトのミリ秒(0~999)を返します.
1
4
getTime()
1970年1月1日現在のミリ秒数を返します.
1
3
getTimezoneOffset()
現地時間とグリニッジ標準時間(GMT)の分差を返します.
1
3
getUTCDate()
世界によってはDateの対象から月の一日(1~31)に戻ります.
1
4
getUTCDay()
世界によってはDateの対象から周中の一日(0~6)に戻ります.
1
4
getUTCMonth()
世界時にDateから月に戻る(0~11).
1
4
getUTCFulYear()
世界では、Dateオブジェクトから4桁の年を返します.
1
4
getUT CHours()
世界時によってDateの対象に戻る時間(0~23).
1
4
getUTCMinutes()
世界時によってはDateの対象に戻る分(0~59).
1
4
getUT CSeconds()
世界時によってはDateオブジェクトの秒(0~59)に戻ります.
1
4
getUTCMilliseconds()
世界時によってはDateオブジェクトのミリ秒(0~999)に戻ります.
1
4
パース()
1970年1月1日深夜から指定日までのミリ秒数を返します.
1
3
set Date()
Dateオブジェクトの月のある日(1~31)を設定します.
1
3
set Month()
Dateオブジェクトの月(0~11)を設定します.
1
3
set FulYear()
Dateオブジェクトの年(4桁の数字)を設定します.
1
4
setYear()
setFulYear()メソッドを使用してください.
1
3
set Hours()
Dateオブジェクトの時間(0~23)を設定します.
1
3
set Minutes()
Dateオブジェクトの分(0~59)を設定します.
1
3
set Seconds()
Dateオブジェクトの秒(0~59)を設定します.
1
3
set Milliseconds()
Dateオブジェクトのミリ秒(0~999)を設定します.
1
4
setTime()
Dateオブジェクトをミリ秒で設定します.
1
3
set UTCDat()
世界時によっては、Dateオブジェクトの中の月の一日(1~31)を設定します.
1
4
setUTCMonth()
Dateオブジェクトの月(0~11)は世界時に設定されます.
1
4
setUTCFulYear()
Dateオブジェクトの年(4桁の数字)を世界時に設定します.
1
4
setUT CHours()
Dateオブジェクトの時間(0~23)は世界時に設定されます.
1
4
setUTCMinutes()
Dateオブジェクトの分(0~59)は世界時に設定されます.
1
4
setUT CSeconds()
Dateオブジェクト中の秒(0~59)は世界時に設定されます.
1
4
setUTCMilliseconds()
Dateオブジェクト中のミリ秒(0~999)は世界時に設定されます.
1
4
toSource()
オブジェクトのソースコードを返します.
1
を選択します.
toString()
Dateオブジェクトを文字列に変換します.
1
4
toTimeString()
Dateオブジェクトの時間部分を文字列に変換します.
1
4
toDateString()
Dateオブジェクトの日付部分を文字列に変換します.
1
4
toGMT String()
toUTCString()方法を使って代替してください.
1
3
toUTCString()
世界によっては、Dateオブジェクトを文字列に変換します.
1
4
toLocale String()
ローカル時間書式に従って、Dateオブジェクトを文字列に変換します.
1
3
toLocale TimeString()
ローカル時間書式に従って、Dateオブジェクトの時間部分を文字列に変換します.
1
3
toLocareDateString()
ローカル時間書式に従って、Dateオブジェクトの日付部分を文字列に変換します.
1
3
UTC()
世界により1997年1月1日から指定日までのミリ秒数を返します.
1
3
valueOf()
Dateオブジェクトの元の値を返します.
1
4
日付の書式設定方法を共有する
ここで一つの日付フォーマットの方法を共有します.使い方はC嚔中DateTimeのToString方法と似ています.
 
  
Date.prototype.toString=function(format){
var time={};
time.Year=this.getFullYear();
time.TYear=(""+time.Year).substr(2);
time.Month=this.getMonth()+1;
time.TMonth=time.Month<10?"0"+time.Month:time.Month;
time.Day=this.getDate();
time.TDay=time.Day<10?"0"+time.Day:time.Day;
time.Hour=this.getHours();
time.THour=time.Hour<10?"0"+time.Hour:time.Hour;
time.hour=time.Hour<13?time.Hour:time.Hour-12;
time.Thour=time.hour<10?"0"+time.hour:time.hour;
time.Minute=this.getMinutes();
time.TMinute=time.Minute<10?"0"+time.Minute:time.Minute;
time.Second=this.getSeconds();
time.TSecond=time.Second<10?"0"+time.Second:time.Second;
time.Millisecond=this.getMilliseconds();

var oNumber=time.Millisecond/1000;

if(format!=undefined && format.replace(/\s/g,"").length>0){
format=format
.replace(/yyyy/ig,time.Year)
.replace(/yyy/ig,time.Year)
.replace(/yy/ig,time.TYear)
.replace(/y/ig,time.TYear)
.replace(/MM/g,time.TMonth)
.replace(/M/g,time.Month)
.replace(/dd/ig,time.TDay)
.replace(/d/ig,time.Day)
.replace(/HH/g,time.THour)
.replace(/H/g,time.Hour)
.replace(/hh/g,time.Thour)
.replace(/h/g,time.hour)
.replace(/mm/g,time.TMinute)
.replace(/m/g,time.Minute)
.replace(/ss/ig,time.TSecond)
.replace(/s/ig,time.Second)
.replace(/fff/ig,time.Millisecond)
.replace(/ff/ig,oNumber.toFixed(2)*100)
.replace(/f/ig,oNumber.toFixed(1)*10);
}
else{
format=time.Year+"-"+time.Month+"-"+time.Day+" "+time.Hour+":"+time.Minute+":"+time.Second;
}
return format;
}

var d=new Date();
console.log(d.toString()); //2011-12-29 11:29:43
console.log(d.toString("")); //2011-12-29 11:29:43
console.log(d.toString("yyyy-MM-dd")); //2011-12-29
console.log(d.toString("HH:mm:ss")); //11:29:43
console.log(d.toString("yyyy-MM-dd HH:mm:ss")); //2011-12-29 11:29:43
console.log(d.toString("yyyy MM dd HH:mm:ss")); //2011 12 29 11:29:43
console.log(d.toString("yyyy-MM-dd HH:mm:ss fff")); //2011-12-29 11:29:43 862