生活随笔
收集整理的這篇文章主要介紹了
js 时间和日期
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
? 1.當前系統區域設置格式(toLocaleDateString和toLocaleTimeString)
例子:(new Date()).toLocaleDateString() + " " + (new Date()).toLocaleTimeString()
結果: 2008年1月29日 16:13:11
2.普通字符串(toDateString和toTimeString)例子: (new Date()).toDateString() + " " + (new Date()).toTimeString()
結果:Tue Jan 29 2008 16:13:11 UTC+0800
3.格林威治標準時間(toGMTString)例子: (new Date()).toGMTString()
結果:Tue, 29 Jan 2008 08:13:11 UTC
4.全球標準時間(toUTCString)例子: (new Date()).toUTCString()
結果:Tue, 29 Jan 2008 08:13:11 UTC
5.Date對象字符串(toString)例子: (new Date()).toString()
結果:Tue Jan 29 16:13:11 UTC+0800 2008
?
document.getElementById("TopTime").innerHTML=new Date().toLocaleString()+' 星期'+'日一二三四五六'.charAt(new Date().getDay());
顯示結果是:2008年7月17日 9:48:28 星期四
new Date().toLocaleDateString()+' 星期'+'日一二三四五六'.charAt(new Date().getDay());
顯示結果是:2008年7月17日 星期四
?
?
JavaScript 得到日期(格式:YYYY-MM-DD)
function?getdate()
{???
??var?now=new?Date();
??y=now.getFullYear();
??m=now.getMonth()+1;
??d=now.getDate();
??m=m<10?"0"+m:m;
??d=d<10?"0"+d:d;
??return?y+"-"+m+"-"+d;
}
alert(getdate());
?
?
?
Javascript日期函數 ? ? ?
? Date(日期)對象可以使用Date()構造器來創建,在前面的教程中我們已經介紹了Date()構造器,這里就不重復敘述。它沒有參數,返回的數值就是當前的日期。下面的表格顯示了為日期構造器的有效輸入: ?
? ?
? var ? today ? = ? new ? Date(); ? ?
? ? 返回當前的日期和時間 ? ?
? ? ?
? var ? newyear ? = ? new ? Date(December ? 31, ? 1998 ? 23:59:59); ? ?
? ? 輸入的是表單的字符串 ? “月 ? 日,年 ? 小時:分鐘:秒” ? ?
? ? ?
? var ? bday ? = ? new ? Date(75, ? 1, ? 16); ? ?
? ? 參數是年份,月,日 ? ?
? ? ?
? var ? bday ? = ? new ? Date(75, ? 1, ? 16, ? 12, ? 0, ? 0); ? ?
? ? 參數是年份,月,日,小時,分鐘,秒 ? ?
? ? ?
? ?
? ?
? 這里作點補充:月份是從0開始的,比如一月份=0,二月份=1,三月份=3等等。 ?
? ?
? 從上面可以看出創建一個日期對象是相對地簡單,以下的表格是一系列的函數可以用于改變或者訪問這些對象的屬性: ?
? ?
? 日期訪問方法 ?
? ?
? Method(方法)????????
??????
? getYear()????
??? 返回年份的最后兩位數字 ? ?
? ? 2001 ? ?
? ? ?
? getMonth() ? ?
? ? 返回年份中的第幾月(0到11) ? ?
? ? 5 ? ?
? ? ?
? getDate() ? ?
? ? 返回月份中的第幾日(1到31) ? ?
? ? 2 ? ?
? ? ?
? getDay() ? ?
? ? 返回星期中的第幾天 ? (0到6) ? ?
? ? 6 ? ?
? ? ?
? getTimezoneOffset() ? ?
? ? 返回當地時間與格林尼治天文臺平均時間的差別 ? ?
? ? -480 ? (-8h) ? ?
? ? ?
? getHours() ? ?
? ? 返回一天中的時針點數(0到23) ? ?
? ? 16 ? ?
? ? ?
? getMinutes() ? ?
? ? 返回分鐘 ? (0..59) ? ?
? ? 8 ? ?
? ? ?
? getSeconds() ? ?
? ? 返回時間的秒 ? (0到59) ? ?
? ? 24 ? ?
? ? ?
? getTime() ? ?
? ? 返回自從公元1970年1月1日的毫秒數 ? ?
? ? 991469304470 ? ?
? ? ?
? ?
? ?
? 這里注意:IE瀏覽器的一些版本返回Timezoneoffset數值是用錯誤的符號,比如用”-”代替”+”等等。 ?
? ?
? 日期設置方法 ?
? ?
? setDate() ? ?
? ? 設置每月中的第幾天(從0到30) ? ?
? ? ?
? setHours() ? ?
? ? 設置小時(從0到23) ? ?
? ? ?
? setMinutes() ? ?
? ? 設置分鐘(從0到59) ? ?
? ? ?
? setMonth() ? ?
? ? 設置月份(從0到11) ? ?
? ? ?
? setSeconds() ? ?
? ? 設置秒數(從0到59) ? ?
? ? ?
? setTime() ? ?
? ? 設置時間(從公元以來的毫秒數) ? ?
? ? ?
? setYear() ? ?
? ? 設置年份 ? ?
? ? ?
? ?
? ?
? 其它的日期方法 ?
? ?
? parse ? ?
? ? 轉化日期字符串為自從公元以來的毫秒數,比如Date.parse(“date ? string”) ? ?
? ? ?
? toString() ? ?
? ? Sat ? Jun ? 2 ? 16:08:24 ? UTC+0800 ? 2001 ? ?
? ? ?
? toGMTString() ? ?
? ? Sat, ? 2 ? Jun ? 2001 ? 08:08:24 ? UTC ? ?
? ? ?
? toLocaleString() ? ?
? ? 2001年6月2日 ? 16:08:24 ? ?
? ? ?
? ?
? ?
? 所有的這些函數引用于獨立的日期對象。如果你具有深厚的Java編程背景,那么你可以將它們認為是Date類的一些公共的方法而已。下面給出一個典型的例子來設置日期對象到當前時間加1年: ? ?
? ?
? var ? nextYear ? = ? new ? Date(); ? // ? 初始化日期對象 ?
? ?
? nextyear.setYear(nextYear.getYear() ? + ? 1); ? // ? 增加1年 ?
? ?
? 實際上,parse函數是Date對象的一個方法,而不是一個獨立的日期變量,如果使用Java術語,它就稱為Date類的一個靜態方法。這個正是我們為什么使用Date.pase()而不使用somedate.parse()的原因啦。
?
日期時間腳本庫方法列表
Date.prototype.isLeapYear?判斷閏年
Date.prototype.Format?日期格式化
Date.prototype.DateAdd?日期計算
Date.prototype.DateDiff?比較日期差
Date.prototype.toString?日期轉字符串
Date.prototype.toArray?日期分割為數組
Date.prototype.DatePart?取日期的部分信息
Date.prototype.MaxDayOfDate?取日期所在月的最大天數
Date.prototype.WeekNumOfYear?判斷日期所在年的第幾周
StringToDate?字符串轉日期型
IsValidDate?驗證日期有效性
CheckDateTime?完整日期時間檢查
daysBetween?日期天數差
js 代碼
??????Date.prototype.isLeapYear?=?function()???{???????return?(0==this.getYear()%4&&((this.getYear()%100!=0)||(this.getYear()%400==0)));???}?????????????????????????Date.prototype.Format?=?function(formatStr)???{???????var?str?=?formatStr;???????var?Week?=?['日','一','二','三','四','五','六'];????????str=str.replace(/yyyy|YYYY/,this.getFullYear());???????str=str.replace(/yy|YY/,(this.getYear()?%?100)>9?(this.getYear()?%?100).toString():'0'?+?(this.getYear()?%?100));?????????str=str.replace(/MM/,this.getMonth()>9?this.getMonth().toString():'0'?+?this.getMonth());???????str=str.replace(/M/g,this.getMonth());?????????str=str.replace(/w|W/g,Week[this.getDay()]);?????????str=str.replace(/dd|DD/,this.getDate()>9?this.getDate().toString():'0'?+?this.getDate());???????str=str.replace(/d|D/g,this.getDate());?????????str=str.replace(/hh|HH/,this.getHours()>9?this.getHours().toString():'0'?+?this.getHours());???????str=str.replace(/h|H/g,this.getHours());???????str=str.replace(/mm/,this.getMinutes()>9?this.getMinutes().toString():'0'?+?this.getMinutes());???????str=str.replace(/m/g,this.getMinutes());?????????str=str.replace(/ss|SS/,this.getSeconds()>9?this.getSeconds().toString():'0'?+?this.getSeconds());???????str=str.replace(/s|S/g,this.getSeconds());?????????return?str;???}???????????function?daysBetween(DateOne,DateTwo)??{???????var?OneMonth?=?DateOne.substring(5,DateOne.lastIndexOf?('-'));??????var?OneDay?=?DateOne.substring(DateOne.length,DateOne.lastIndexOf?('-')+1);??????var?OneYear?=?DateOne.substring(0,DateOne.indexOf?('-'));????????var?TwoMonth?=?DateTwo.substring(5,DateTwo.lastIndexOf?('-'));??????var?TwoDay?=?DateTwo.substring(DateTwo.length,DateTwo.lastIndexOf?('-')+1);??????var?TwoYear?=?DateTwo.substring(0,DateTwo.indexOf?('-'));????????var?cha=((Date.parse(OneMonth+'/'+OneDay+'/'+OneYear)-?Date.parse(TwoMonth+'/'+TwoDay+'/'+TwoYear))/86400000);???????return?Math.abs(cha);??}????????????Date.prototype.DateAdd?=?function(strInterval,?Number)?{???????var?dtTmp?=?this;??????switch?(strInterval)?{???????????case?'s'?:return?new?Date(Date.parse(dtTmp)?+?(1000?*?Number));??????????case?'n'?:return?new?Date(Date.parse(dtTmp)?+?(60000?*?Number));??????????case?'h'?:return?new?Date(Date.parse(dtTmp)?+?(3600000?*?Number));??????????case?'d'?:return?new?Date(Date.parse(dtTmp)?+?(86400000?*?Number));??????????case?'w'?:return?new?Date(Date.parse(dtTmp)?+?((86400000?*?7)?*?Number));??????????case?'q'?:return?new?Date(dtTmp.getFullYear(),?(dtTmp.getMonth())?+?Number*3,?dtTmp.getDate(),?dtTmp.getHours(),?dtTmp.getMinutes(),?dtTmp.getSeconds());??????????case?'m'?:return?new?Date(dtTmp.getFullYear(),?(dtTmp.getMonth())?+?Number,?dtTmp.getDate(),?dtTmp.getHours(),?dtTmp.getMinutes(),?dtTmp.getSeconds());??????????case?'y'?:return?new?Date((dtTmp.getFullYear()?+?Number),?dtTmp.getMonth(),?dtTmp.getDate(),?dtTmp.getHours(),?dtTmp.getMinutes(),?dtTmp.getSeconds());??????}??}??????????Date.prototype.DateDiff?=?function(strInterval,?dtEnd)?{???????var?dtStart?=?this;??????if?(typeof?dtEnd?==?'string'?)??????{???????????dtEnd?=?StringToDate(dtEnd);??????}??????switch?(strInterval)?{???????????case?'s'?:return?parseInt((dtEnd?-?dtStart)?/?1000);??????????case?'n'?:return?parseInt((dtEnd?-?dtStart)?/?60000);??????????case?'h'?:return?parseInt((dtEnd?-?dtStart)?/?3600000);??????????case?'d'?:return?parseInt((dtEnd?-?dtStart)?/?86400000);??????????case?'w'?:return?parseInt((dtEnd?-?dtStart)?/?(86400000?*?7));??????????case?'m'?:return?(dtEnd.getMonth()+1)+((dtEnd.getFullYear()-dtStart.getFullYear())*12)?-?(dtStart.getMonth()+1);??????????case?'y'?:return?dtEnd.getFullYear()?-?dtStart.getFullYear();??????}??}??????????Date.prototype.toString?=?function(showWeek)??{???????var?myDate=?this;??????var?str?=?myDate.toLocaleDateString();??????if?(showWeek)??????{???????????var?Week?=?['日','一','二','三','四','五','六'];??????????str?+=?'?星期'?+?Week[myDate.getDay()];??????}??????return?str;??}????????????function?IsValidDate(DateStr)???{???????var?sDate=DateStr.replace(/(^\s+|\s+$)/g,'');???????if(sDate=='')?return?true;???????????????????var?s?=?sDate.replace(/[\d]{?4,4?}[\-/]{?1?}[\d]{?1,2?}[\-/]{?1?}[\d]{?1,2?}/g,'');???????if?(s=='')???????{???????????var?t=new?Date(sDate.replace(/\-/g,'/'));???????????var?ar?=?sDate.split(/[-/:]/);???????????if(ar[0]?!=?t.getYear()?||?ar[1]?!=?t.getMonth()+1?||?ar[2]?!=?t.getDate())???????????{?????????????????????????????return?false;???????????}???????}???????else???????{?????????????????????return?false;???????}???????return?true;???}?????????????function?CheckDateTime(str)??{???????var?reg?=?/^(\d+)-(\d{?1,2?})-(\d{?1,2?})?(\d{?1,2?}):(\d{?1,2?}):(\d{?1,2?})$/;???????var?r?=?str.match(reg);???????if(r==null)return?false;???????r[2]=r[2]-1;???????var?d=?new?Date(r[1],r[2],r[3],r[4],r[5],r[6]);???????if(d.getFullYear()!=r[1])return?false;???????if(d.getMonth()!=r[2])return?false;???????if(d.getDate()!=r[3])return?false;???????if(d.getHours()!=r[4])return?false;???????if(d.getMinutes()!=r[5])return?false;???????if(d.getSeconds()!=r[6])return?false;???????return?true;???}???????????Date.prototype.toArray?=?function()??{???????var?myDate?=?this;??????var?myArray?=?Array();??????myArray[0]?=?myDate.getFullYear();??????myArray[1]?=?myDate.getMonth();??????myArray[2]?=?myDate.getDate();??????myArray[3]?=?myDate.getHours();??????myArray[4]?=?myDate.getMinutes();??????myArray[5]?=?myDate.getSeconds();??????return?myArray;??}??????????????Date.prototype.DatePart?=?function(interval)??{???????var?myDate?=?this;??????var?partStr='';??????var?Week?=?['日','一','二','三','四','五','六'];??????switch?(interval)??????{???????????case?'y'?:partStr?=?myDate.getFullYear();break;??????????case?'m'?:partStr?=?myDate.getMonth()+1;break;??????????case?'d'?:partStr?=?myDate.getDate();break;??????????case?'w'?:partStr?=?Week[myDate.getDay()];break;??????????case?'ww'?:partStr?=?myDate.WeekNumOfYear();break;??????????case?'h'?:partStr?=?myDate.getHours();break;??????????case?'n'?:partStr?=?myDate.getMinutes();break;??????????case?'s'?:partStr?=?myDate.getSeconds();break;??????}??????return?partStr;??}??????????Date.prototype.MaxDayOfDate?=?function()??{???????var?myDate?=?this;??????var?ary?=?myDate.toArray();??????var?date1?=?(new?Date(ary[0],ary[1]+1,1));??????var?date2?=?date1.dateAdd(1,'m',1);??????var?result?=?dateDiff(date1.Format('yyyy-MM-dd'),date2.Format('yyyy-MM-dd'));??????return?result;??}??????????Date.prototype.WeekNumOfYear?=?function()??{???????var?myDate?=?this;??????var?ary?=?myDate.toArray();??????var?year?=?ary[0];??????var?month?=?ary[1]+1;??????var?day?=?ary[2];??????document.write('<?script?language=VBScript\>?\n');??????document.write('myDate?=?DateValue(''+month+'-'+day+'-'+year+'')?\n');??????document.write('result?=?DatePart('ww',?myDate)?\n');??????document.write('?\n');??????return?result;??}????????????function?StringToDate(DateStr)??{?????????var?converted?=?Date.parse(DateStr);??????var?myDate?=?new?Date(converted);??????if?(isNaN(myDate))??????{?????????????????????var?arys=?DateStr.split('-');??????????myDate?=?new?Date(arys[0],--arys[1],arys[2]);??????}??????return?myDate;??}?
轉載于:https://www.cnblogs.com/linpengfeixgu/articles/1520749.html
總結
以上是生活随笔為你收集整理的js 时间和日期的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。