Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537
JavaScript中,Date對象用于處理日期和時(shí)間。常見創(chuàng)建Date對象的方式有兩種,具體介紹如下。推薦了解黑馬程序員web前端課程。
創(chuàng)建不帶參數(shù)的Date對象,示例代碼如下:
var d=new Date();
在上述代碼中,創(chuàng)建了一個(gè)含有系統(tǒng)當(dāng)前日期和時(shí)間的Date對象。
創(chuàng)建一個(gè)指定日期的Date對象,示例代碼如下:
var d=new Date(2015,1);
在上述示例代碼中“2015”表示年份,“1”表示月份,運(yùn)用這種方式可以分別傳入年、月、日、時(shí)、分、秒(月的范圍是0-11,即真實(shí)月份減去1),例如下面的示例代碼:
var =new Dte(2015,7,3,10,20,30,50);
在上述代碼中,創(chuàng)建了一個(gè)包含確切日期和時(shí)間的Date對象,即2015年8月3日10點(diǎn)20分30秒50毫秒。需要注意的是,在創(chuàng)建指定日期的Date對象時(shí),最少需要指定年、月兩個(gè)參數(shù),后面的參數(shù)在省略時(shí)會(huì)自動(dòng)使用默認(rèn)值。值得一提的是,通過字符串也可以傳入事件和日期,其創(chuàng)建方式如下:
var d=new Date('2017-10-0111:53:04');
在上述示例代碼中,系統(tǒng)會(huì)自動(dòng)識別字符串,轉(zhuǎn)換為日期和時(shí)間。需要注意的是使用字符串傳入日期時(shí),至少要指定年份。了解創(chuàng)建對象的常見方式之后,接下來介紹Date對象的常用方法。
(1)getFullYear()
獲取表示年份的4位數(shù)字,如2020。
(2)setFullYear(value)
設(shè)置年份
(3)getMonth()
獲取月份,范圍為0-11(0表示一月,1表示二月,依此類推)
(4)setMonth(value)
設(shè)置月份
(5)getDate()
獲取月份中的某一天,范圍為1~31
(6)setDate(value)
設(shè)置月份中的某一天
(7)getDay()
獲取星期,范圍為0-6(0表示星期日,1表示星期一,依此類推)
(8)getHours()
獲取小時(shí)數(shù),范圍為0-23
(9)setHours(value)
設(shè)置小時(shí)數(shù)
(10)getMinutes()
獲取分鐘數(shù),范圍為0~59
(11)setMinutes(value)
設(shè)置分鐘數(shù)
(12)getSeconds()
獲取秒數(shù),范圍為0-59
(13)setSeconds(value)
設(shè)置秒數(shù)
(14)getMilliseconds()獲取毫秒數(shù),范圍為0-99
(15)setMilliseconds(value)
設(shè)置毫秒數(shù)
(16)getTime()
獲取從1970-01-01 00:00:00距離Date對象所代表時(shí)間的毫秒數(shù)
(17)setTime(value)
通過從1970-01-01 00:00: 00計(jì)時(shí)的毫秒數(shù)來設(shè)置時(shí)間
喜歡記得關(guān)注一下哦。
常開發(fā)中,Date對于我們來說是經(jīng)常使用到的,平常使用的一些UI框架,如Antd、ElementUI等都會(huì)使用像moment.js、day.js的時(shí)間工具庫去處理它們關(guān)于時(shí)間的組件,但當(dāng)我們脫離這些框架,想去解決一個(gè)關(guān)于時(shí)間轉(zhuǎn)換的問題,引入一個(gè)時(shí)間工具庫就顯得冗余了,由此這里給大家分享22個(gè)關(guān)于Date實(shí)用的一行Javascript與typescript代碼大全,建議收藏閱讀!
前置知識
Intl 對象是 ECMAScript 國際化 API 的一個(gè)命名空間,它提供了精確的字符串對比、數(shù)字格式化,和日期時(shí)間格式化。Collator,NumberFormat 和 DateTimeFormat 對象的構(gòu)造函數(shù)是 Intl 對象的屬性。了解更多
Intl.DateTimeFormat是根據(jù)語言來格式化日期和時(shí)間的對象的構(gòu)造器
語法:
// locales為語言
new Intl.DateTimeFormat([locales[, options]])
Intl.DateTimeFormat.call(this[, locales[, options]])
// 格式化對應(yīng)語言得日期,date為Date實(shí)例,返回日期字符串
new Intl.DateTimeFormat(locale).format(date)
// 獲取時(shí)區(qū)
Intl.DateTimeFormat().resolvedOptions().timeZone
22個(gè)關(guān)于Date實(shí)用的一行Javascript與typescript代碼大全
JavaScript 版本
// `h` 是 0 到 23 之間的小時(shí)數(shù)
const suffixAmPm = (h) => `${h % 12 === 0 ? 12 : h % 12}${h < 12 ? 'am' : 'pm'}`;
TypeScript 版本
期對象用于處理日期和時(shí)間。
在線實(shí)例
<a target="_blank" 返回當(dāng)日的日期和時(shí)間<="" a="" style="margin: 0px; padding: 0px; color: rgb(100, 133, 76); text-decoration: underline; transition-duration: 0.2s; transition-property: opacity;">
如何使用 Date() 方法獲得當(dāng)日的日期。
<a target="_blank" 返回當(dāng)日的日期和時(shí)間<="" a="" style="margin: 0px; padding: 0px; color: rgb(100, 133, 76); transition-duration: 0.2s; transition-property: opacity; font-family: 'Open Sans', 'Helvetica Neue', Helvetica, Arial, STHeiti, 'Microsoft Yahei', sans-serif; font-size: 12px; line-height: normal; white-space: normal;">
<a target="_blank" 返回當(dāng)日的日期和時(shí)間<="" a="" style="margin: 0px; padding: 0px; color: rgb(100, 133, 76); text-decoration: underline; transition-duration: 0.2s; transition-property: opacity;">getFullYear()
使用 getFullYear() 獲取年份。
getTime()
getTime() 返回從 1970 年 1 月 1 日至今的毫秒數(shù)。
setFullYear()
如何使用 setFullYear() 設(shè)置具體的日期。
toUTCString()
如何使用 toUTCString() 將當(dāng)日的日期(根據(jù) UTC)轉(zhuǎn)換為字符串。
getDay()
如何使用 getDay() 和數(shù)組來顯示星期,而不僅僅是數(shù)字。
Display a clock
如何在網(wǎng)頁上顯示一個(gè)鐘表。
完整的 Date 對象參考手冊
我們提供 JavaScript Date 對象參考手冊,其中包括所有可用于日期對象的屬性和方法。JavaScript Date 對象參考手冊。
該手冊包含了對每個(gè)屬性和方法的詳細(xì)描述以及相關(guān)實(shí)例。
創(chuàng)建日期
Date 對象用于處理日期和時(shí)間。
可以通過 new 關(guān)鍵詞來定義 Date 對象。以下代碼定義了名為 myDate 的 Date 對象:
有四種方式初始化日期:
new Date() // 當(dāng)前日期和時(shí)間
new Date(milliseconds) //返回從 1970 年 1 月 1 日至今的毫秒數(shù)
new Date(dateString)
new Date(year, month, day, hours, minutes, seconds, milliseconds)
上面的參數(shù)大多數(shù)都是可選的,在不指定的情況下,默認(rèn)參數(shù)是0。
<p從 1970="" 年="" 1="" 月="" 日通用一天計(jì)算為86,400,000毫秒<="" p="" style="color: rgb(51, 51, 51); font-family: 'Open Sans', 'Helvetica Neue', Helvetica, Arial, STHeiti, 'Microsoft Yahei', sans-serif; font-size: 12px; line-height: normal; white-space: normal;">
實(shí)例化一個(gè)日期的一些例子:
var today = new Date()
var d1 = new Date("October 13, 1975 11:13:00")
var d2 = new Date(79,5,24)
var d3 = new Date(79,5,24,11,33,0)
設(shè)置日期
通過使用針對日期對象的方法,我們可以很容易地對日期進(jìn)行操作。
在下面的例子中,我們?yōu)槿掌趯ο笤O(shè)置了一個(gè)特定的日期 (2010 年 1 月 14 日):
var myDate=new Date();
myDate.setFullYear(2010,0,14);
在下面的例子中,我們將日期對象設(shè)置為 5 天后的日期:
var myDate=new Date();
myDate.setDate(myDate.getDate()+5);
注意: 如果增加天數(shù)會(huì)改變月份或者年份,那么日期對象會(huì)自動(dòng)完成這種轉(zhuǎn)換。
兩個(gè)日期比較
日期對象也可用于比較兩個(gè)日期。
下面的代碼將當(dāng)前日期與 2100 年 1 月 14 日做了比較:
var x=new Date();
x.setFullYear(2100,0,14);
var today = new Date();
if (x>today)
{
alert("今天是2100年1月14日之前");
}
else
{
alert("今天是2100年1月14日之后");
}
如您還有不明白的可以在下面與我留言或是與我探討QQ群308855039,我們一起飛!
*請認(rèn)真填寫需求信息,我們會(huì)在24小時(shí)內(nèi)與您取得聯(lián)系。