JS Date()对象介绍 - Kaiqisan

JS Date()对象介绍

ヤッハロー、Kaiqisanすうう、一つふつうの学生プログラマである, 之前一直在为Date对象困扰,我对它的状态一直处于半懂不懂的状态,就是大致清楚,但是经常会面向百度编程。没错,这篇博客又是为了加深印象而写的。

一种特殊的对象,可以用来表示时间。

let date = new Date()

这样就可以获取当前的日期,返回一个对象

console.log(typeof date) // object

虽然它在显示上容易让人误解为是一个字符串就是了

Wed Aug 26 2020 12:37:55 GMT+0800 (中国标准时间)

如果您想要单纯地截取这里的内容的话,直接强制类型转换就行了

let date = new Date()
date = String(date)
/// 后面自由操作

上面讲的是Date对象最简易的用法,但是作为一个对象,它一定有它的属性和方法的。

老方法,直接看它的原型就可以了

let date = new Date()
console.log(date.__proto__)

然后,我们发现这个对象是非常特殊的,因为它没有一个固定的属性值是可以直接获取的,所以,使用for in方法也是毫无结果。全都是方法,好巧不巧,别的教程网页做了全部方法的汇总,我就直接拿过来咯!

友情链接–菜鸟教程

方法名 用途
getDate() 从 Date 对象返回一个月中的某一天 (1 ~ 31)。
getDay() 从 Date 对象返回一周中的某一天 (0 ~ 6)。
getFullYear() 从 Date 对象以四位数字返回年份。
getHours() 返回 Date 对象的小时 (0 ~ 23)。
getMilliseconds() 返回 Date 对象的毫秒(0 ~ 999)。
getMinutes() 返回 Date 对象的分钟 (0 ~ 59)。
getMonth() 从 Date 对象返回月份 (0 ~ 11)。
getSeconds() 返回 Date 对象的秒数 (0 ~ 59)。
getTime() 返回 1970 年 1 月 1 日至今的毫秒数。
getTimezoneOffset() 返回本地时间与格林威治标准时间 (GMT) 的分钟差。
getUTCDate() 根据世界时从 Date 对象返回月中的一天 (1 ~ 31)。
getUTCDay() 根据世界时从 Date 对象返回周中的一天 (0 ~ 6)。
getUTCFullYear() 根据世界时从 Date 对象返回四位数的年份。
getUTCHours() 根据世界时返回 Date 对象的小时 (0 ~ 23)。
getUTCMilliseconds() 根据世界时返回 Date 对象的毫秒(0 ~ 999)。
getUTCMinutes() 根据世界时返回 Date 对象的分钟 (0 ~ 59)。
getUTCMonth() 根据世界时从 Date 对象返回月份 (0 ~ 11)。
getUTCSeconds() 根据世界时返回 Date 对象的秒钟 (0 ~ 59)。
getYear() 已废弃。 请使用 getFullYear() 方法代替。
parse() 返回1970年1月1日午夜到指定日期(字符串)的毫秒数。
setDate() 设置 Date 对象中月的某一天 (1 ~ 31)。
setFullYear() 设置 Date 对象中的年份(四位数字)。
setHours() 设置 Date 对象中的小时 (0 ~ 23)。
setMilliseconds() 设置 Date 对象中的毫秒 (0 ~ 999)。
setMinutes() 设置 Date 对象中的分钟 (0 ~ 59)。
setMonth() 设置 Date 对象中月份 (0 ~ 11)。
setSeconds() 设置 Date 对象中的秒钟 (0 ~ 59)。
setTime() setTime() 方法以毫秒设置 Date 对象。
setUTCDate() 根据世界时设置 Date 对象中月份的一天 (1 ~ 31)。
setUTCFullYear() 根据世界时设置 Date 对象中的年份(四位数字)。
setUTCHours() 根据世界时设置 Date 对象中的小时 (0 ~ 23)。
setUTCMilliseconds() 根据世界时设置 Date 对象中的毫秒 (0 ~ 999)。
setUTCMinutes() 根据世界时设置 Date 对象中的分钟 (0 ~ 59)。
setUTCMonth() 根据世界时设置 Date 对象中的月份 (0 ~ 11)。
setUTCSeconds() setUTCSeconds() 方法用于根据世界时 (UTC) 设置指定时间的秒字段。
setYear() 已废弃。请使用 setFullYear() 方法代替。
toDateString() 把 Date 对象的日期部分转换为字符串。
toGMTString() 已废弃。请使用 toUTCString() 方法代替。
toISOString() 使用 ISO 标准返回字符串的日期格式。
toJSON() 以 JSON 数据格式返回日期字符串。
toLocaleDateString() 根据本地时间格式,把 Date 对象的日期部分转换为字符串。
toLocaleTimeString() 根据本地时间格式,把 Date 对象的时间部分转换为字符串。
toLocaleString() 根据本地时间格式,把 Date 对象转换为字符串。
toString() 把 Date 对象转换为字符串。
toTimeString() 把 Date 对象的时间部分转换为字符串。
toUTCString() 根据世界时,把 Date 对象转换为字符串。实例:var today = new Date(); var UTCstring = today.toUTCString();
UTC() 根据世界时返回 1970 年 1 月 1 日 8时0分0秒 到指定时间的毫秒数。
valueOf() 返回 Date 对象的原始值。

上面的所定义的时间都是定义的当前时间,接下来,我们来自定义时间。

自定义时间也需要Date对象,可以使用如下的形式来定义

new Date(milliseconds): 填入一个数字,计算完从1970 年 1 月 1 日 0时0分0秒 往(前)后推移n毫秒之后的时间,一般情况都是用不到的,一般在后端**[判断token是否注册超时导致过期]**的时候会用到。里面是参数有范围限制
(-8640000000000000— 8640000000000000)填负数就要往前推移,不介意回到公元前。

new Date(dateString): 填入表示日期的字符串,它有以下格式规定

  • yyyy-MM-dd hh:mm:ss
  • yyyy-MM-dd hh:mm:ss:SSSS 精确到毫秒
  • yyyy/MM/dd hh:mm:ss 但说实在的,在日期这边年月日之间只需要有字符隔开就可以分辨了,但在时间这边的格式必须要规范
  • yyyy-MM-dd 没有了时间,默认为0点0分0秒

new Date(year, month, day, hours, minutes, seconds, milliseconds);里面的参数很明了了,自己看,内部参数都不是必填的,如果没填就取默认值。

总结

很常用的方法,而且它的格式和后端存储的时间格式是完全一样的,所以,在从后端拿到数据之后可以毫无顾虑地使用和转化。

猜你喜欢

转载自blog.csdn.net/qq_33933205/article/details/108238213
今日推荐