使用 DateJS 仅解析时间字符串

2023-11-25

我正在使用优秀的(但很大)DateJS用于处理我的网络应用程序中的日期和时间的库。我刚刚遇到一些我不知道如何处理的事情。

我希望我的用户能够仅输入时间字符串,而不输入日期,但他们应该能够以他们喜欢的任何方式输入它。例如:

  • 5:00 pm
  • 17:00
  • 5:00pm
  • 5:00p
  • 5p
  • etc.

Using Date.parse(value)将这些字符串转换为完整日期,这正是我想要的。但是,它还允许用户输入日期字符串的任何其他部分,例如:

  • sat 5pm
  • 2010年1月1日下午5点
  • etc.

我正在尝试使用 DateJS 验证输入字段的时间值。就像是:

function validateTime(value) {
    return Date.parse(value) !== null;
}

有没有办法使用 DateJS 功能来解决这个问题?还有其他的所以问题提供解决方案,但如果 DateJS 有办法做到这一点,我真的不想向我的应用程序添加更多自定义代码来执行此操作。


在问我的问题后不久,我发现 Date.parseExact() 可以采用格式字符串数组。不知怎的,我错过了这一点。我设法使用以下代码得到一些东西:

function validateTime(input) {
    return Date.parseExact(input, [
            "H:m",
            "h:mt",
            "h:m t",
            "ht","h t"]) != null ||
        Date.parseExact(input, [
            "h:mtt",
            "h:m tt",
            "htt","h tt"]) != null;
};

请注意,某些格式似乎无法同时包含在一起,这就是为什么我将它们分成两个单独的 parseExact() 调用。在这种情况下,我无法包含任何包含单个的字符串t其中包含包含双精度的格式字符串tt in it.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 DateJS 仅解析时间字符串 的相关文章

随机推荐

  • Android Google Places API,getAutocompletePredictions 返回状态“PLACES_API_ACCESS_NOT_CONFIGURED”

    我在使用 Android Google Places API 自动完成功能时遇到问题 我使用与 Android Google Maps API 相同的密钥 在文档中 写的是这样可以 这是我在清单中的定义
  • Matlab filter() 与 SciPy lfilter()

    根据他们的文档Matlab滤波器 and SciPylfilter 看起来他们应该是 兼容 的 然而我有一个问题 在Python中移植更大的Matlab代码 为此我得到了ValueError object of too small dept
  • 发布网站不会更新我的 CSS 包

    当我在发布模式下从 Visual Studio 运行代码并检查捆绑的样式表时 我可以看到对该捆绑中的 css 文件的更新 但是 当我将网站发布到服务器或本地计算机时 我对样式表的更改尚未生效 捆绑的样式表仍然是旧的样式表 我尝试过重置 II
  • 如何修复 ('throw er; // Unhandled 'error' event') 代码生命周期?

    我尝试创建一个 React 应用程序 我用的是命令提示符但是在创建应用程序后 当我尝试启动 npm 时 它给了我一些错误 我也尝试在 WebStorm IntelliJ 和 Visual Studio Code PowerShell 中创建
  • 角度动画在 IE Edge 中不起作用

    我在 Angular 中向我的组件添加了一个动画 然而 动画在 Chrome 和 Firefox 中工作正常 但在 IE Edge 中 尽管样式在状态更改时正确应用 但动画并未触发 但只是没有指定动画 有人有同样的问题吗 这是我的代码 an
  • 启动 Android Studio 时出错:无法创建 JVM:错误代码-6

    我安装了Android Studio并且运行正常 但因为它有点慢 所以我按照网站上的说明进行操作 Android Studio 速度慢时怎么办尽管我尝试卸载并重新安装 AS 以及 Java 但它使我无法重新打开 android studio
  • 此 jar 包含其签名者证书将在六个月内过期的条目

    我已经以各种方式对我的 jar 进行了签名 但是当我使用以下命令时 我不断收到上述错误消息 jarsigner verify verbose my jar 有没有办法消除这个错误 如果没有重新认证 我的代码会在六个月后停止工作吗 以下是用于
  • 从购物车页面删除 Woocommerce 购物车数量选择器

    我正在尝试从购物车页面删除 Woocommerce 购物车数量选择器 我正在商店存档页面上使用数量输入字段 并将其应用到购物车页面 我怎样才能删除它并且不允许用户更改它 我已尝试使用下面的代码进行以下操作 并从官方 Woocommerce
  • 在 Makefile 中找不到指向的库文件

    我正在尝试编译这个工具 下面是其 Makefile 的开头 CC gcc CFLAGS Wall O2 D TRACES DFLAGS g Wall o0 CPPFLAGS INCLUDES I LDFLAGS LIBRARIES L LD
  • 在 appsettings.json (asp.net core 本地化)中设置文化和 ui-culture?

    我有 asp net core 应用程序 我想要本地化和翻译 v 1 1 0 我希望源代码支持英语和挪威语部署 我发现这可能是一个startup cs配置 RequestLocalizationOptions localizationOpt
  • C 数组可以在元素之间包含填充吗?

    我听说有传言说 在 C 中 包含在结构内部的数组可能在数组元素之间添加了填充 现在显然 任何一对元素之间的填充量都不能变化 或者使用简单的指针算术不可能计算数组中的下一个元素 该谣言还指出 不包含在结构中的数组保证不包含填充 我至少知道那部
  • python、postgresql 中的数据库测试

    如何对使用 postgresql 的 python DAL 进行单元测试 在 sqlite 中 您可以为每个测试创建内存数据库 但对于 postgresql 则不能这样做 我想要一个可用于设置数据库并在测试完成后清理它的库 我使用 Sqla
  • 何时为 JWT 使用 RS256?

    所以 现在我正在构建一个供第三方使用的 API 并且我正在阅读有关 RS256 和 HS256 的内容 我的理解是 两者之间的区别在于 第一个使用公钥进行验证 使用私钥进行签名 而另一个则仅使用一个密钥 因此 如果您使用 RS256 因为您
  • 给自己发送一封电子邮件,但让我回复另一封电子邮件

    我正在使用我的 Web 应用程序平台 node js 上的模块 nodemailer 向使用我的 Web 应用程序的联系页面的某人发送电子邮件给自己 因为 我要向自己发送一封电子邮件 如果我回复该电子邮件 我将再次向自己发送一封电子邮件 而
  • 无法加载 LZ4 支持的 Python 扩展。 LZ4 压缩将不可用

    我是 ROS 新手 我刚刚打开终端并输入roscore和另一个终端并键入rostopic node我收到这个错误 上面写着 无法加载 LZ4 支持的 Python 扩展 LZ4 压缩将不可用 我搜索并去了https pypi org pro
  • Django:将变量从 get_context_data() 传递到 post()

    变量定义在里面get context view 因为它需要一个id访问正确的数据库对象 class FooView TemplateView def get context data self id kwargs bar Bar objec
  • Click 事件在 IE/Firefox 中触发,但 Chrome 正在放弃事件分配

    我正在调试我的网络应用程序 但遇到了困难 我仅在 Google Chrome 中遇到一种行为 而我的 javascript 无能使我无法找到解决方案 我有一个 ASP 页面 其中包含
  • 配置 pymongo 使用字符串 _id 而不是 ObjectId

    我在用着pymongo用来自不同系统的旧信息播种数据库 我有很多这样的查询 studentId studentsRemote insert price price 在实际的 python 脚本中 studentId作为字符串打印 但在我使用
  • JSF2 复合组件:#{cc.childCount} 和 是否互斥?

    我只是不明白 如果我希望我的复合组件插入子组件 我use
  • 使用 DateJS 仅解析时间字符串

    我正在使用优秀的 但很大 DateJS用于处理我的网络应用程序中的日期和时间的库 我刚刚遇到一些我不知道如何处理的事情 我希望我的用户能够仅输入时间字符串 而不输入日期 但他们应该能够以他们喜欢的任何方式输入它 例如 5 00 pm 17