国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費(fèi)電子書(shū)等14項(xiàng)超值服

開(kāi)通VIP
JavaScript日期和時(shí)間
在日期和時(shí)間這一塊的學(xué)習(xí)中發(fā)現(xiàn),其實(shí)和其他大部分的高級(jí)語(yǔ)言中時(shí)間和日期的操作差不多,沒(méi)什么特別的,但是要注意的就是 ECMAScript中規(guī)定的一些方法在各大瀏覽器中的實(shí)現(xiàn)方式是不一樣的,也就是說(shuō)存在瀏覽器的不兼容問(wèn)題練習(xí)中主要是用的IE9,很少測(cè)試其他瀏覽器,故后面的練習(xí)結(jié)果都是基于IE9瀏覽器的結(jié)果,其他瀏覽器的結(jié)果可能不一

1、Date 類型
   ECMAScript中的Date類型使用的是UTC(世界統(tǒng)一時(shí)間)1970年1月1日零時(shí)開(kāi)始進(jìn)過(guò)的毫秒來(lái)保存的時(shí)間與日期。

  創(chuàng)建一個(gè)Date對(duì)象和創(chuàng)建一個(gè)Object對(duì)象差不多,通過(guò)new關(guān)鍵字和構(gòu)造函數(shù)來(lái)創(chuàng)建的。如果創(chuàng)建的時(shí)候沒(méi)有傳遞參數(shù),那么默認(rèn)的獲取的是本地的當(dāng)前時(shí)間

  ECMAScript提供了兩個(gè)靜態(tài)方法 Date.parse()和Date.UTC();都是接受參數(shù)返回毫秒

  Date.parse()中接收的是表示日期的字符串,一般常用的格式都可以,年月日/日月年,如果沒(méi)有給出時(shí)間就默認(rèn)的是0,如'2013-01-13 12:34:24';當(dāng)然也包含英文寫(xiě)法,'英文月名 日, 年',如 May 25, 2004;.'英文星期幾 英文月名 日 年 時(shí):分:秒 時(shí)區(qū)', 如 'Tue May 25 2004 00:00:00 GMT-070';如果不滿足上面的一些要求就會(huì)返回一個(gè)NaN

  Eg:alert(Date.parse('6/13/2011')); //1307894400000

  Date.UTC()方法同樣也返回表示日期的毫秒數(shù), 但它與 Date.parse()在構(gòu)建值時(shí)使用不同的信息。 (年份, 基于 0 的月份[0 表示 1 月, 1 表示 2 月], 月中的哪一天[1-31], 小時(shí)數(shù)[0-23],分鐘,秒以及毫秒)。只有前兩個(gè)參數(shù)是必須的。如果沒(méi)有提供 月數(shù),則天數(shù)為 1;如果省略其他參數(shù),則統(tǒng)統(tǒng)為 0.  eg:Date.UTC(2013,11,25);傳遞 的是有效的數(shù)值非字符串

  如果輸入的參數(shù)不正確就會(huì)返回NaN或者是負(fù)數(shù)等非法信息 Date.UTC('2012-12');

  由于創(chuàng)建日期的時(shí)候是可以傳遞一個(gè)參數(shù)的,故需要輸出指定的日期的時(shí)候,將上面兩個(gè)方法的返回值傳遞給Date()的構(gòu)造函數(shù)即可,new Date(Date.parse('2014/01/02'));new Date(Date.UTC());當(dāng)然對(duì)于Date.parse()可以直接傳遞復(fù)合個(gè)數(shù)的數(shù)值字符串給Date構(gòu)造函數(shù),因?yàn)橄到y(tǒng)會(huì)自動(dòng)的調(diào)用Date.parse()函數(shù),eg:new Date('2014-01-02');

 

2、通用的方法:   toString()(返回UTC格式時(shí)間),  toLocaleString()(返回本地格式),  valueOf()(返回毫秒數(shù))

 3、日期格式化方法

  

toDateString() //以特定的格式顯示星期幾、月、日和年
toTimeString()  //以特定的格式顯示時(shí)分秒和時(shí)區(qū)
toLocaleDateString() //以特定本地區(qū)格式顯示日期
toLocaleTimeString() //以特定的本地區(qū)格式顯示時(shí)間和時(shí)區(qū)
toUTCString()   //以特定格式顯示UTC日期
toDateString() //以特定的格式顯示星期幾、月、日和年
toTimeString()  //以特定的格式顯示時(shí)分秒和時(shí)區(qū)
toLocaleDateString() //以特定本地區(qū)格式顯示日期
toLocaleTimeString() //以特定的本地區(qū)格式顯示時(shí)間和時(shí)區(qū)
toUTCString()   //以特定格式顯示UTC日期

toDateString() //以特定的格式顯示星期幾、月、日和年
toTimeString()  //以特定的格式顯示時(shí)分秒和時(shí)區(qū)
toLocaleDateString() //以特定本地區(qū)格式顯示日期
toLocaleTimeString() //以特定的本地區(qū)格式顯示時(shí)間和時(shí)區(qū)
toUTCString()   //以特定格式顯示UTC日期
1
2
3
4
5
toDateString() //以特定的格式顯示星期幾、月、日和年
toTimeString()  //以特定的格式顯示時(shí)分秒和時(shí)區(qū)
toLocaleDateString() //以特定本地區(qū)格式顯示日期
toLocaleTimeString() //以特定的本地區(qū)格式顯示時(shí)間和時(shí)區(qū)
toUTCString()   //以特定格式顯示UTC日期


4、組件方法(重要)   下面的set方法是設(shè)置時(shí)間變量中的某一部分值,get方法是獲取值

box.getTime() //獲取日期的毫秒數(shù),和valueOf的返回值是一樣的
box.setTime(100) //一毫秒數(shù)來(lái)設(shè)置時(shí)間,會(huì)改變整個(gè)日期,因?yàn)槿掌谑且院撩霐?shù)保存的
box.getYear() //獲取的是當(dāng)前年份相對(duì)與1900的間隔時(shí)間
box.setYear(114) //以間隔時(shí)間來(lái)設(shè)置年份,
box.getFullYear() //獲取日期中的四位年份部分,返回的是當(dāng)前年如:2014
box.setFullYear(2014) //設(shè)置四位年份部分,返回的是毫秒數(shù)
box.getMonth() //獲取月份,如果沒(méi)有指定月份,則從0開(kāi)始算起(0表示一月份)
box.setMonth(11) //設(shè)置月份,11表示的是第十二月份
box.getDate() //獲取的是當(dāng)前的日期
box.setDate(23) //設(shè)置日期,返回的是毫秒數(shù)
box.getDay() //獲取的是當(dāng)前時(shí)間中的星期幾,0表示星期1,6表示星期6
box.setDay(2) //設(shè)置星期幾
box.getHours() //獲取當(dāng)前日期中的時(shí)間部分
box.setHours(12) //返回時(shí),24小時(shí)制
box.getMinutes() //獲取當(dāng)前日期中的分鐘部分
box.setMinutes(22) //設(shè)置分鐘
box.getSeconds()  //獲取秒鐘
box.setSeconds(23) //設(shè)置秒鐘
box.getMillseconds() //獲取毫秒數(shù)
box.setMillseconds(233) //設(shè)置毫秒數(shù)
box.getTimezoneOffset() //返回本地時(shí)間和UTC時(shí)間相差的分鐘
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
box.getTime() //獲取日期的毫秒數(shù),和valueOf的返回值是一樣的
box.setTime(100) //一毫秒數(shù)來(lái)設(shè)置時(shí)間,會(huì)改變整個(gè)日期,因?yàn)槿掌谑且院撩霐?shù)保存的
box.getYear() //獲取的是當(dāng)前年份相對(duì)與1900的間隔時(shí)間
box.setYear(114) //以間隔時(shí)間來(lái)設(shè)置年份,
box.getFullYear() //獲取日期中的四位年份部分,返回的是當(dāng)前年如:2014
box.setFullYear(2014) //設(shè)置四位年份部分,返回的是毫秒數(shù)
box.getMonth() //獲取月份,如果沒(méi)有指定月份,則從0開(kāi)始算起(0表示一月份)
box.setMonth(11) //設(shè)置月份,11表示的是第十二月份
box.getDate() //獲取的是當(dāng)前的日期
box.setDate(23) //設(shè)置日期,返回的是毫秒數(shù)
box.getDay() //獲取的是當(dāng)前時(shí)間中的星期幾,0表示星期1,6表示星期6
box.setDay(2) //設(shè)置星期幾
box.getHours() //獲取當(dāng)前日期中的時(shí)間部分
box.setHours(12) //返回時(shí),24小時(shí)制
box.getMinutes() //獲取當(dāng)前日期中的分鐘部分
box.setMinutes(22) //設(shè)置分鐘
box.getSeconds()  //獲取秒鐘
box.setSeconds(23) //設(shè)置秒鐘
box.getMillseconds() //獲取毫秒數(shù)
box.setMillseconds(233) //設(shè)置毫秒數(shù)
box.getTimezoneOffset() //返回本地時(shí)間和UTC時(shí)間相差的分鐘

  注:上面的方法中除了最后一個(gè)方法 box.setTimezoneOffset()以外,其他的方法都具有UTC功能,以便和世界時(shí)間相協(xié)調(diào),如:setDate()和getDate()對(duì)應(yīng)的UTC方法是setUTCDate()和getUTCDate(

/*

//創(chuàng)建一個(gè)日期類的對(duì)象,通過(guò)構(gòu)造方法,此處沒(méi)有傳遞參數(shù),獲取的是本的時(shí)間(瀏覽器各異)
var time=new Date();
alert(time);//Thu Jan 02 2014 15:06:46 GMT+0800 (China Standard Time)

//    Date.parse() 和 Date.UTC()    是Date類型提供的兩個(gè)靜態(tài)方法。不需要?jiǎng)?chuàng)建對(duì)象的
//Date.parse() 返回指定日期的毫秒數(shù),指定日期有三種格式,不符合格式會(huì)返回NaN
//  字符串括起來(lái)的日月年    '4/3/2013';
    var box=Date.parse('15/01/2013');
    alert(box);//1393603200000   
    var age=Date.parse('15-01-2013');
    alert(age);//1393603200000
    var time=Date.parse('2013-01-15');
    alert(time);//1358208000000
    alert(Date.parse('2013-15-01'));//NaN

//'英文月 日,年'
    var time=Date.parse('May 25,2013');
    alert(time);//1369411200000
    time=Date.parse('May,25,2013');
    alert(time);//1369411200000
    var ti=Date.parse('25,May,2013');
    alert(ti);//1369411200000
    var t=Date.parse('2013,May,25');
    alert(t);//1369411200000
    var box=Date.parse('2013,25,May');
    alert(box);//1369411200000
    var age=Date.parse('2013-May-25');
    alert(age);//NaN

//'英文星期幾 英文月名 日 年 時(shí):分:秒 時(shí)區(qū)', 如 Tue May 25 2004 00:00:00 GMT-070
    alert(Date.parse('Tue May 25 2004 00:00:00 GMT-070'));//1085447400000


//如果想輸出具體的日期和時(shí)間,可以把值傳入 Data 的構(gòu)造函數(shù)里面
    var box=new Date(Date.parse('15-01-2013'));
    alert(box);//Sat Mar 01 2014 00:00:00 GMT+0800 (China Standard Time)

    //可以不用寫(xiě) Date.parse() 而是直接傳入一個(gè)符合上面三種格式的日期,
    //系統(tǒng)會(huì)自動(dòng)的調(diào)用 Date.parse()方法
    var box=new Date('15-01-2013');
    alert(box);//Sat Mar 01 2014 00:00:00 GMT+0800 (China Standard Time)

//Date 對(duì)象及其在不同瀏覽器中的實(shí)現(xiàn)有許多奇怪的行為。其中有一種傾向是將超
//出的范圍的值替換成當(dāng)前的值,以便生成輸出。例如,在解析“January 32, 2007”時(shí),有的
//瀏覽器會(huì)講其解釋為“February 1, 2007” 。而 Opera 則傾向與插入當(dāng)前月份的當(dāng)前日期
    var box=new Date('January 32, 2007');
    alert(box);//Thu Feb 01 2007 00:00:00 GMT+0800 (China Standard Time)

//UTC 是國(guó)際統(tǒng)一時(shí)間  我國(guó)為東八區(qū),故UTC時(shí)間加上8小時(shí)為本地時(shí)間
//Date.UTC()方法同樣也返回表示日期的毫秒數(shù), 但它與 Date.parse()在構(gòu)建值時(shí)使用不同
//的信息。 (年份, 基于 0 的月份[0 表示 1 月, 1 表示 2 月], 月中的哪一天[1-31], 小時(shí)數(shù)[0-23],
//分鐘,秒以及毫秒)。只有前兩個(gè)參數(shù)是必須的。如果沒(méi)有提供月數(shù),則天數(shù)為 1;如果省
//略其他參數(shù),則統(tǒng)統(tǒng)為 0.

    alert(Date.UTC(2013,12));//1388534400000
//如果輸入非法值 則會(huì)返回負(fù)數(shù)或者 NaN
    alert(Date.UTC('2013,13'));//NaN
//同樣將返回值傳入到 Date的構(gòu)造函數(shù)中就可以輸出具體的值
    alert(new Date(Date.UTC(2011,11,5,15,13,16)));
    //Mon Dec 05 2011 23:13:16 GMT+0800 (China Standard Time)

*/

/*    通用方法  toString()(UTC格式) toLocaleString()(本地格式)    valueOf()(返回的是毫秒數(shù))
    var box=new Date(Date.UTC(2011,11,5,15,13,16));
    alert(box);//Mon Dec 05 2011 23:13:16 GMT+0800 (China Standard Time)
    alert(box.toString());//Mon Dec 05 2011 23:13:16 GMT+0800 (China Standard Time)
    alert(box.toLocaleString());//?2011?-?12?-?05? ?23?:?13?:?16
    alert(box.valueOf());//返回的是毫秒數(shù)   1323097996000

*/

/*    序列化方法        都是按照特定的格式顯示
    var box =new Date();
    alert(box);//Thu Jan 02 2014 17:18:58 GMT+0800 (China Standard Time)
    alert(box.toDateString());//Thu Jan 02 2014
    alert(box.toTimeString());//17:18:58 GMT+0800 (China Standard Time)
    alert(box.toLocaleDateString());//2014?-?01?-?02?
    alert(box.toLocaleTimeString());//17:18:30
    alert(box.toUTCString());//以特定的格式顯示完整的UTC時(shí)間  Thu, 02 Jan 2014 09:21:54 GMT

*/


/*    組件方法    獲取年月日時(shí)分秒星期等等等等

    var box=new Date();
    alert(box.getYear());//114    獲取的是相對(duì)于1900年的年份間隔
    alert(box.getTime());//1388654969210    返回的是毫秒數(shù)  和valueOf()返回的值是一樣的
    alert(box.getDate());//2
    alert(box.getFullYear());//2014
    alert(box.getMonth());//0    // 0 代表的是一月
    alert(box.getDay());//4        星期幾
    alert(box.getHours());// 17        返回的是本地的小時(shí)
    alert(box.getMinutes());//30  返回的是分鐘數(shù)
    alert(box.getSeconds());//48    返回的是秒
    alert(box.getMilliseconds());//884    返回的是毫秒數(shù)

    alert(box.getTimezoneOffset());// -480    返回的是本地時(shí)間和UTC時(shí)間相差的分鐘數(shù)


*/

本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)。
打開(kāi)APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
JavaScript日期對(duì)象 - 方法
Firefox 下對(duì)包含時(shí)分秒日期的 Date 格式化兼容方案
javascript類型系統(tǒng)——日期Date對(duì)象
使用lubridate處理日期時(shí)間
JS比較兩個(gè)日期的大小
一篇文章帶你了解JavaScript日期
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服