如何将 dd/mm/yyyy 字符串转换为 JavaScript Date 对象?

新手上路,请多包涵

如何将格式为 23/10/2015 的日期转换为

JavaScript 日期格式:

Fri Oct 23 2015 15:24:53 GMT+0530 (India Standard Time)

原文由 Raja Manickam 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 911
2 个回答

MM/DD/YYYY 格式

如果你有 JavaScript 默认MM/DD/YYYY 格式,你可以简单地将你的字符串传递给 Date(string) 构造函数。它会为你解析它。

 var dateString = "10/23/2015"; // Oct 23

 var dateObject = new Date(dateString);

 document.body.innerHTML = dateObject.toString();

DD/MM/YYYY 格式 - 手动

如果您使用这种格式,那么您可以拆分日期以分别获取日、月和年,然后在另一个构造函数中使用它 - Date(year, month, day)

 var dateString = "23/10/2015"; // Oct 23

 var dateParts = dateString.split("/");

 // month is 0-based, that's why we need dataParts[1] - 1
 var dateObject = new Date(+dateParts[2], dateParts[1] - 1, +dateParts[0]);

 document.body.innerHTML = dateObject.toString();

有关更多信息,您可以阅读 Mozilla Developer Network 上有关 Date 的文章。

DD/MM/YYYY - 使用 moment.js

或者,您可以使用 moment.js 库,它可能是 JavaScript 中最流行的用于解析和操作日期和时间的库:

 var dateString = "23/10/2015"; // Oct 23

 var dateMomentObject = moment(dateString, "DD/MM/YYYY"); // 1st argument - string, 2nd argument - format
 var dateObject = dateMomentObject.toDate(); // convert moment.js object to Date object

 document.body.innerHTML = dateObject.toString();
 <script src="https://momentjs.com/downloads/moment.min.js"></script>

在所有三个示例中, dateObject 变量都包含一个 Date 类型的对象,它代表一个时间点,并且可以进一步转换为任何字符串格式。

原文由 Yeldar Kurmangaliyev 发布,翻译遵循 CC BY-SA 4.0 许可协议

这是我之前准备的…

   convertToDate(dateString) {
      //  Convert a "dd/MM/yyyy" string into a Date object
      let d = dateString.split("/");
      let dat = new Date(d[2] + '/' + d[1] + '/' + d[0]);
      return dat;
  }

原文由 Mike Gledhill 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题