21、日期对象Date()

日期对象Date()

创建Date对象

定义

  1. 定义的全是关于日期的功能和方法
  2. 日期对象是系统提供好的对象
  3. 日期对象有很多属性和方法

创建 Date 对象

Date 对象由新的 Date() 构造函数创建。

有 4 种方法创建新的日期对象:

  • new Date()
  • new Date(year, month, day, hours, minutes, seconds, milliseconds)
  • new Date(milliseconds)
  • new Date(date string)
new Date()

new Date() 用当前日期和时间创建新的日期对象:

日期获取方法

获取方法用于获取日期的某个部分(来自日期对象的信息)。下面是最常用的方法(以字母顺序排序):

方法描述
getDay()以数值获取周名(0-6)
getFullYear()获取四位的年(yyyy)
getMonth()获取月(0-11)
getDate()以数值返回天(1-31)
getHours()获取小时(0-23)
getMinutes()获取分(0-59)
getSeconds()获取秒(0-59)
getMilliseconds()获取毫秒(0-999)
getTime()获取时间(从 1970 年 1 月 1 日至今)

大的Date()作为构造对象,单独执行,不new的话会返回一个日期字符串。

image-20221012061755092

getDay()

返回当前时间是本周的第几天(0-6 星期日开始算 星期日是0 所以周三就是3)

image-20221012060418741

getFullYear()

获取当年的年份(四位数) 也就是2022这样展示 历史上一开始用两位展示 但是不够用(换世纪会冲突 所以淘汰了getYear() 因为它是两位的年)

image-20221012060539277

getMonth()

获取当前时间的月份(0-11) 注意一月是0 所以当前十月 就会打印9

image-20221012061022364

getDate()

var date = new Date();

返回当前时间是本月第几天(1-31) 当前是哪天就是哪天

image-20221012061053379

getHours()

获取当前是几时(0-23)

image-20221012061207563

getMinutes()

获取当前的分(0-59)

image-20221012061308953

getSeconds()

获取当前秒(0-59)

image-20221012061446609

getMilliseconds()

获取当前毫秒(0-999) 1000毫秒=1秒

image-20221012061505397

date记录的是它出生的那一刻的时分秒,不是实时的

date时刻记录之后就不会发生改变

image-20221012062652487

getTime()

返回自1970年1月1日以来的毫秒数,返回的是时间戳。

计算机的纪元时间:1970.01.01 相当于定义的那是计算机出生的时间。

image-20221012063244685

计算机不知道时间,但是始终知道现在的时间距离纪年时间过了多少年月日分秒。然后换算成我们能看懂的时间。

时间戳(13位)

时间戳就是记录当前时刻,就好比邮票上印上去的时间一样,记录那一刻的时间

// 获取循环使用时间(实战开发中可以用来测试效率,优化代码来节约时间)
var firstTime = new Date().getTime(); // 获取循环之前的时间戳
for(var i = 0; i < 10000; i ++) {
    
}
var lastTime = new Date().getTime(); // 循环结束后的时间戳
// 打印结束时的时间戳减去开始时的时间戳
console.log(lastTime - firstTime);

一万圈只用一毫秒,哈哈哈哈!

image-20221012064211781

日期设置方法

设置方法用于设置日期的某个部分。下面是最常用的方法(按照字母顺序排序):

方法描述
setFullYear()设置年(可选月和日)
setMonth()设置月(0-11)
setDate()以数值(1-31)设置日
setHours()设置小时(0-23)
setMinutes()设置分(0-59)
setSeconds()设置秒(0-59)
setMilliseconds()设置毫秒(0-999)
setTime()设置时间(从 1970 年 1 月 1 日至今的毫秒数)

setFullYear()

设置年(可选月和日)

// 不带月日
    var date = new Date();
    date.setFullYear(2023);  // 把当前时间改成2023年

image-20221012070012979

// 包含月日
// 请注意,月份从 0 计数。十二月是 11
    var date = new Date();
    date.setFullYear(2023, 11, 20);

image-20221012070925514

setMonth()

设置月(0-11) 1是二月

image-20221012070413039

setDate()

以数值(1-31)设置日 回不去的十一

image-20221012070542134

setHours()

设置小时(0-23) 今天不用上班了

image-20221012070633420

setMinutes()

设置分(0-59)

image-20221012071031738

<script type="text /javascript">
    var date = new Date();
    date.setMinutes(35); // 让data的分加到35分
    setInterval(function () {
 // 等到准确的时间到达35分并且大于data的35超过一秒之后开始打印(间隔1000毫秒也就是1秒 打印一次)
        if(new Date( ).getTime( ) - date.getTime( ) > 1000){
        	console.log('张杰很帅')
        }
    },1000 ); // 每隔一秒(1000毫秒)执行一次
</script>

image-20221012213605181

setSeconds()

设置秒(0-59)

image-20221012071112475

setMilliseconds()

设置毫秒(0-999)

image-20221012071146793

setTime()

设置时间(从 1970 年 1 月 1 日至今的毫秒数) 返回对应时间戳的时间

image-20221012071349748

封装函数,打印当前是何年何月何日何时,几分几秒。

function date() {
    var date = new Date();
    console.log(date.getFullYear(),date.getMonth(),
               date.getDate(),date.getHours(),
               date.getMinutes(),,date.getSeconds())
}
date();

image-20221012215119053
ar date = new Date();
console.log(date.getFullYear(),date.getMonth(),
date.getDate(),date.getHours(),
date.getMinutes(),date.getSeconds())
}
date();


[外链图片转存中...(img-paDsmJF2-1665582702991)]
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

好好学习_fighting

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值