title: JavaScript日期比较和字符串转日期的一个小问题
date: 2019-03-01 00:00:00
categories:

  • 前端
    tags:
  • JavaScript

场景再现

  1. 业务中需要为一组iview日期选择器(开始日期+结束日期)添加一个验证,开始日期小于等于结束日期。
  2. 两个日期选择器的比较函数中,需要将两个输入的字符串类型的日期(2019-03-13)转换为日期格式,然后通过><进行日期的比较
    JavaScript日期比较和字符串转日期的一个小问题 - 图1

遇到的问题

  1. JavaScript日期比较和字符串转日期的一个小问题 - 图2
  2. 字符串格式的日期’2019-03-13’用new Date()转换成日期格式的时候会自动加上了08:00:00,iview选择日期之后,默认转成date类型的日期,同时加上了时间,但是是从00:00:00开始,这样第一次选择一个日期选择器,iview会自动变成Date格式,而后来选择的,是用new Date()代码转换程的Date日期与结束日期一比较就会出现偏差

解决办法

  1. 在第二次需要代码转换时,在字符串2019-03-13后面加上00:00:00,避免自动加上8小时。