在面向客户的电子商务应用程序中使用 JavaScript 格式化日期

Formatting date with JavaScript in a customer fronting e-commerce application

我们有一种情况需要格式化 json 包含日期字符串(例如“2017-01-29”)的响应属性。要格式化我们当前使用 jquery UI 函数的日期,例如:

dayVar = $.datepicker.formatDate('M dd, yy', new Date("2017-01-29"));

但是如果我们打印 dayVar,它显示为 Jan 28, 17,而不是预期的 Jan 29, 17。 解决此问题以适应任何时区的最佳解决方案是什么?

它是使用 Marionette 框架构建的单页应用程序。

在实例化新的 Date 对象时,您将 Time 留给解释。默认情况下,大多数环境会将其解释为 00:00:00 ...但是,由于这是 javascript,因此您将受制于用户的本地计算机来解释此值。

我会将字符串中的 00:00:00 附加到 Date() 函数。强制执行预期的结果,或者甚至尝试花时间看看它创建了什么样的输出(也许将其设置为凌晨 1 点或 22:00:00)这应该提供对导致问题的原因的更深入的理解,希望是解决方案。