【问题标题】:Formatting a date in javascript till the millisecond在javascript中格式化日期直到毫秒
【发布时间】:2012-02-09 14:43:04
【问题描述】:

我们正在使用来自 Microsoft 的以下 js 库 https://ajax.aspnetcdn.com/ajax/4.0/1/MicrosoftAjax.js

var datetimehigh = new Date(2011,01,12,14,45,55,596);

var sDate =  datetimehigh.format("dd/MM/yyyy HH:mm:ss sss");

我无法让毫秒部分工作。请注意,格式来自 Microsoft 的 Mvc Ajax 库。

【问题讨论】:

  • 你试过用大写 S 表示毫秒部分吗?
  • 你试过“l”(小写L)

标签: javascript jquery microsoft-ajax


【解决方案1】:

如果您使用的是原生的Date javascript 对象,您可以简单地使用.toISOString 方法来获取格式化字符串,单位为毫秒:

const date = new Date();
const dateString = date.toISOString(); // "2020-01-06T19:57:12.146Z"

请注意,使用 .toString 不会为您提供毫秒精度。

【讨论】:

    【解决方案2】:

    它由 f 表示:

    "dd/MM/yyyy HH:mm:ss fff"
    

    【讨论】:

    • 它没有按预期工作:myDateTime.format("mm-dd-yy HH:MM:ss fff") 给出:"12-03-18 11:28:49 fff"
    【解决方案3】:

    使用“S”表示毫秒格式:

    "dd/MM/yyyy HH:mm:ss:SSS"
    

    【讨论】:

    • 如何将毫秒精度提高到小数点后6位?
    【解决方案4】:

    使用日期格式库,应该是这样的:

    var nowMilliseconds = new Date().format("yyyy-mm-dd HH:MM:ss l");
    

    http://blog.stevenlevithan.com/archives/date-time-format

    L 表示两位数的毫秒数

    l(减号)三位数的毫秒数

    【讨论】:

    • 谢谢,正是我想要的。这非常适合在带有移植的 dateformat 模块的 Node.js 中使用:npmjs.com/package/dateformat
    • 太棒了!按预期工作: myDateTime.format("mm-dd-yy HH:MM:ss.l") "12-03-18 11:28:49.000"
    • 遇到new Date() 问题:(中间值).format 不是函数"
    • @StephenBoesch 它的原型曾经由npmjs.com/package/dateformat 提供,但已被弃用。您仍然可以使用该库。
    猜你喜欢
    • 1970-01-01
    • 2014-10-12
    • 1970-01-01
    • 2015-12-17
    • 1970-01-01
    • 2013-08-13
    • 2011-11-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多