JavaScript 将日期转换为格式

JavaScript convert date to format

本文关键字:格式 转换 日期 JavaScript      更新时间:2023-09-26

我正在尝试从以下位置截断JavaScript Date对象字符串:

Wed Aug 01 2012 06:00:00 GMT-0700 (Pacific Daylight Time)

Wed Aug 01 2012

(我不是特别的,例如,只要我摆脱时间/时区,就可以MM/DD/YYYY格式)

从本质上讲,我只想摆脱时间和时区,因为我需要与另一个日期(不包括时间或时区)进行===比较

我试过使用这个 http://www.mattkruse.com/javascript/date/index.html 但无济于事。有谁知道如何格式化现有字符串,例如摆脱时间?我宁愿远离substring功能,但如果这是唯一的选择,那么我想我将不得不解决。

编辑:我对比较两个日期对象/字符串的选项持开放态度,如果日期相同且时间不同,则返回true

在不同浏览器中获取特定格式的日期的唯一方法是自己创建它。ECMAScript 中的 Date 方法都是依赖于实现的。

如果您有日期对象,则:

// For format Wed Aug 01 2012
function formatDate(obj) {
  var days = ['Sun','Mon','Tue','Wed','Thu','Fri','Sat'];
  var months = ['Jan','Feb','Mar','Apr','May','Jun',
               'Jul','Aug','Sep','Oct','Nov','Dec'];    
  return days[obj.getDay()] + ' ' + months[obj.getMonth()] + 
         ' ' + obj.getDate() + ' ' + obj.getFullYear();
}

虽然使用更广泛的格式是 星期三 01 Aug 2012

使用 Date 对象的 toDateString() 方法,而不是其 toString() 方法。

并排演示

即便如此,直接比较两个日期对象可能会更好:使用 JavaScript 比较两个日期