js日期函数

2019-01-072288
秦泽森
web研发

遇到的问题

  • 后台返回一个本地时间格式的时间,前端需要将其以yyyy-mm-dd的形式展示
  • 前端通过UI组件获得一个本地时间格式后需要传给后台一个时间戳
  • 用户输入年月日的起止日期后,前端传给后台起止日期的时间戳。(开始时间要00:00:00,结束时间要23:59:59)

日期对象归类

1、方法分类:获取(get)、设置(set)、转换格式(to)、其他(parse、valueOf) 2、每个方法类别都包括:年、月、日、星期几、时、分、秒、毫秒、(本地和UTC时间) 3、set类型的方法在超过其设定范围时会自动折算,以setDate为例,如果参数超过当月的最大天数,则向下一个月顺延,如果参数是0或负数,表示从上个月的最后一天开始减去的天数。

问题解决方案

1、用toLocalDateString()转换,先把后台返回的时间转成Date对象以确保正确性 2、将本地时间格式转成Date对象后用valueOf转成时间戳(或用parse去转化string类型的日期为时间戳) 3、获取到UI返回值后转成Date对象,再通过设置set来达到目的,此处要分开调用set,若用"."去不停链接会报错。

对象的详细函数如下

  • Date() 返回当日的日期和时间。
  • getDate() 从 Date 对象返回一个月中的某一天 (1 ~ 31)。
  • getDay() 从 Date 对象返回一周中的某一天 (0 ~ 6)。
  • getMonth() 从 Date 对象返回月份 (0 ~ 11)。
  • getFullYear() 从 Date 对象以四位数字返回年份。
  • getHours() 返回 Date 对象的小时 (0 ~ 23)。
  • getMinutes() 返回 Date 对象的分钟 (0 ~ 59)。
  • getSeconds() 返回 Date 对象的秒数 (0 ~ 59)。
  • getMilliseconds() 返回 Date 对象的毫秒(0 ~ 999)。
  • getTime() 返回 1970 年 1 月 1 日至今的毫秒数。
  • getTimezoneOffset() 返回本地时间与格林威治标准时间 (GMT) 的分钟差。
  • getUTCDate() 根据世界时从 Date 对象返回月中的一天 (1 ~ 31)。
  • getUTCDay() 根据世界时从 Date 对象返回周中的一天 (0 ~ 6)。
  • getUTCMonth() 根据世界时从 Date 对象返回月份 (0 ~ 11)。
  • getUTCFullYear() 根据世界时从 Date 对象返回四位数的年份。
  • getUTCHours() 根据世界时返回 Date 对象的小时 (0 ~ 23)。
  • getUTCMinutes() 根据世界时返回 Date 对象的分钟 (0 ~ 59)。
  • getUTCSeconds() 根据世界时返回 Date 对象的秒钟 (0 ~ 59)。
  • getUTCMilliseconds() 根据世界时返回 Date 对象的毫秒(0 ~ 999)。
  • parse() 返回1970年1月1日午夜到指定日期(字符串)的毫秒数。
  • setDate() 设置 Date 对象中月的某一天 (1 ~ 31)。
  • setMonth() 设置 Date 对象中月份 (0 ~ 11)。
  • setFullYear() 设置 Date 对象中的年份(四位数字)。
  • setHours() 设置 Date 对象中的小时 (0 ~ 23)。
  • setMinutes() 设置 Date 对象中的分钟 (0 ~ 59)。
  • setSeconds() 设置 Date 对象中的秒钟 (0 ~ 59)。
  • setMilliseconds() 设置 Date 对象中的毫秒 (0 ~ 999)。
  • setTime() 以毫秒设置 Date 对象。
  • setUTCDate() 根据世界时设置 Date 对象中月份的一天 (1 ~ 31)。
  • setUTCMonth() 根据世界时设置 Date 对象中的月份 (0 ~ 11)。
  • setUTCFullYear() 根据世界时设置 Date 对象中的年份(四位数字)。
  • setUTCHours() 根据世界时设置 Date 对象中的小时 (0 ~ 23)。
  • setUTCMinutes() 根据世界时设置 Date 对象中的分钟 (0 ~ 59)。
  • setUTCSeconds() 根据世界时设置 Date 对象中的秒钟 (0 ~ 59)。
  • setUTCMilliseconds() 根据世界时设置 Date 对象中的毫秒 (0 ~ 999)。
  • toSource() 返回该对象的源代码。
  • toString() 把 Date 对象转换为字符串。
  • toTimeString() 把 Date 对象的时间部分转换为字符串。
  • toDateString() 把 Date 对象的日期部分转换为字符串。
  • toUTCString() 根据世界时,把 Date 对象转换为字符串。
  • toLocaleString() 根据本地时间格式,把 Date 对象转换为字符串。
  • toLocaleTimeString() 根据本地时间格式,把 Date 对象的时间部分转换为字符串。
  • toLocaleDateString() 根据本地时间格式,把 Date 对象的日期部分转换为字符串。
  • UTC() 根据世界时返回 1970 年 1 月 1 日 到指定日期的毫秒数。
  • valueOf() 返回 Date 对象的原始值。
分享
点赞1
打赏
上一篇:代理工具Fiddler -调试与替换接口状态
下一篇:五分钟快速了解Less