首页 > web前端 > js教程 > 正文

如何安全地将 dd-mm-yyyy 字符串转换为 JavaScript 日期对象?

Susan Sarandon
发布: 2024-11-22 19:57:14
原创
291 人浏览过

How to Safely Convert a dd-mm-yyyy String to a JavaScript Date Object?

将 dd-mm-yyyy 格式的字符串转换为 JavaScript 中的日期对象

尝试转换 dd-mm-yyyy 格式的字符串到 Date 对象中,由于 '-' 的存在,您可能会遇到“无效日期”错误

解决方案 1:按“-”拆分

将字符串分成单独的日、月和年部分:

var dateStr = $("#datepicker").val();
var dateParts = dateStr.split("-");
var date = new Date(dateParts[2], dateParts[1] - 1, dateParts[0]);
登录后复制

解决方案 2:使用正则表达式(正则表达式)

使用正则表达式从字符串中提取各个组成部分:

var regex = /(\d{2})-(\d{2})-(\d{4})/;
var date = new Date(dateStr.replace(regex, "//"));
登录后复制

建议:按“-”拆分

虽然正则表达式提供了更大的灵活性,但在解析固定格式字符串时建议使用“-”进行分割,因为它更简单、更高效高效,特别是当您在代码的多个部分重用解析逻辑时。

可重用性和现代 JavaScript

为了可重用性,您可以将解析逻辑包装在函数:

function parseDate(dateStr) {
  var dateParts = dateStr.split("-");
  return new Date(dateParts[2], dateParts[1] - 1, dateParts[0]);
}
登录后复制

在现代 JavaScript 中,您可以使用数组解构来简化解析:

const parseDate = (dateStr) => {
  const [day, month, year] = dateStr.split("-");
  return new Date(year, month - 1, day);
};
登录后复制

以上是如何安全地将 dd-mm-yyyy 字符串转换为 JavaScript 日期对象?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板