「JavaScript高級プログラム設計」読書ノート(十):地元対象Date

14001 ワード

作成
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クラスの方法は以下の通りです.
<!--
テーブル.dataintable{
font-family:Arial、Helvetica、sans-serif;
magin-top:10 px;
border-collappse:collappse;
border:1 px sold啝888;
width:100%
)
table.dataintable th{
vertical-align:baseline;
padding:5 px 15 px 5 px 5 px;
background-カラー:𞃳CCC;
border:1 px sold啝888;
text-align:left;
)
テーブル.dataintable td{
vertical-align:text-top;
padding:5 px 15 px 5 px 5 px;
background-カラー:𞃳EFEF;
border:1 px sold腣AAA;
)
-->
方法
説明
FF
IE
http://www.w3school.com.cn/js/jsref_OBdate.asp
その日の日付と時間を返します.
1
3
Date()
Dateオブジェクトから一ヶ月のある日(1~31)を返します.
1
3
get Date()
Dateオブジェクトから一週間のうちのある日(0~6)を返します.
1
3
getDay()
Dateオブジェクトから月(0~11)に戻ります.
1
3
get Month()
Dateオブジェクトから4桁の数字で年を返します.
1
4
get FulYear()
getFulYear()メソッドを使って代替してください.
1
3
getYear()
Dateオブジェクトの時間(0~23)を返します.
1
3
get Hours()
Dateオブジェクトの分(0~59)を返します.
1
3
get Minutes()
Dateオブジェクトの秒数(0~59)を返します.
1
3
get Seconds()
Dateオブジェクトのミリ秒(0~999)を返します.
1
4
get Milliseconds()
1970年1月1日現在のミリ秒数を返します.
1
3
getTime()
現地時間とグリニッジ標準時間(GMT)の分差を返します.
1
3
getTimezoneOffset()
世界によってはDateの対象から月の一日(1~31)に戻ります.
1
4
getUTCDate()
世界によってはDateの対象から周中の一日(0~6)に戻ります.
1
4
getUTCDay()
世界時にDateから月に戻る(0~11).
1
4
getUTCMonth()
世界では、Dateオブジェクトから4桁の年を返します.
1
4
getUTCFulYear()
世界時によってDateの対象に戻る時間(0~23).
1
4
getUT CHours()
世界時によってはDateの対象に戻る分(0~59).
1
4
getUTCMinutes()
世界時によってはDateオブジェクトの秒(0~59)に戻ります.
1
4
getUT CSeconds()
世界時によってはDateオブジェクトのミリ秒(0~999)に戻ります.
1
4
getUTCMilliseconds()
1970年1月1日深夜から指定日までのミリ秒数を返します.
1
3
パース()
Dateオブジェクトの月のある日(1~31)を設定します.
1
3
set Date()
Dateオブジェクトの月(0~11)を設定します.
1
3
set Month()
Dateオブジェクトの年(4桁の数字)を設定します.
1
4
set FulYear()
setFulYear()メソッドを使用してください.
1
3
setYear()
Dateオブジェクトの時間(0~23)を設定します.
1
3
set Hours()
Dateオブジェクトの分(0~59)を設定します.
1
3
set Minutes()
Dateオブジェクトの秒(0~59)を設定します.
1
3
set Seconds()
Dateオブジェクトのミリ秒(0~999)を設定します.
1
4
set Milliseconds()
Dateオブジェクトをミリ秒で設定します.
1
3
setTime()
世界時によっては、Dateオブジェクトの中の月の一日(1~31)を設定します.
1
4
set UTCDat()
Dateオブジェクトの月(0~11)は世界時に設定されます.
1
4
setUTCMonth()
Dateオブジェクトの年(4桁の数字)を世界時に設定します.
1
4
setUTCFulYear()
Dateオブジェクトの時間(0~23)は世界時に設定されます.
1
4
setUT CHours()
Dateオブジェクトの分(0~59)は世界時に設定されます.
1
4
setUTCMinutes()
Dateオブジェクト中の秒(0~59)は世界時に設定されます.
1
4
setUT CSeconds()
Dateオブジェクト中のミリ秒(0~999)は世界時に設定されます.
1
4
setUTCMilliseconds()
オブジェクトのソースコードを返します.
1
を選択します.
toSource()
Dateオブジェクトを文字列に変換します.
1
4
toString()
Dateオブジェクトの時間部分を文字列に変換します.
1
4
toTimeString()
Dateオブジェクトの日付部分を文字列に変換します.
1
4
toDateString()
toUTCString()方法を使って代替してください.
1
3
toGMT String()
世界によっては、Dateオブジェクトを文字列に変換します.
1
4
toUTCString()
ローカル時間書式に従って、Dateオブジェクトを文字列に変換します.
1
3
toLocale String()
ローカル時間書式に従って、Dateオブジェクトの時間部分を文字列に変換します.
1
3
toLocale TimeString()
ローカル時間書式に従って、Dateオブジェクトの日付部分を文字列に変換します.
1
3
toLocareDateString()
世界では1970年1月1日から指定日までのミリ秒数を返します.
1
3
UTC()
Dateオブジェクトの元の値を返します.
1
4
日付の書式設定方法を共有する
ここで一つの日付フォーマットの方法を共有します.使い方はC嚔中DateTimeのToString方法と似ています.
//       (2011/12/29) http://www.cnblogs.com/artwl/archive/2011/12/29/2305853.html
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
注:
コードのTMonth、TDayの前のTは二桁を表します.
コード由来:valueOf()