【问题标题】:How to convert UTC Date by Javascript?如何通过 Javascript 转换 UTC 日期?
【发布时间】:2013-02-07 02:39:25
【问题描述】:

我从 Web 服务获取日期的格式为 "2013-02-06T10:40:56.027",如何将其转换为 "2/6/2013 2:40 AM"

我从 Sharepoint 2010 的 SocialDataService 获得的 Web 服务

我试试momentjavascript:

var date = moment(lastModifiedTime);

var result = date.format("MM/DD/YYYY hh:mm A");

但结果不正确的时间:02/06/2013 10:40 AM

我预期的结果:02/06/2013 2:40 AM

【问题讨论】:

  • 原始时间没有时区信息。似乎您必须使用您的时区(或用户的时区)来计算您的当地时间?
  • 你有计算美国时区的公式吗?
  • 我认为@ShivanRaptor 是说服务输出应该包含时区信息,否则不可能知道绝对时间。
  • @GraceShao 是的,Web Service 的结果不包含时区信息。
  • 没有人可以解决这个问题吗?真的不可能吗?

标签: javascript date sharepoint-2010 format momentjs


【解决方案1】:

如果您可以假设您的服务返回 UTC 时间,您可以尝试以下操作:

moment.utc(result_from_service).local()

更多详情:http://momentjs.com/docs/#/manipulating/utc/

【讨论】:

    【解决方案2】:
    //Manually add time zone to the date string
    var date = moment(lastModifiedTime + "+15:00");
    var result = date.format("MM/DD/YYYY hh:mm A");
    

    【讨论】:

    • 如果你在提供代码的同时解释它,这将是一个更有力的答案。
    猜你喜欢
    • 1970-01-01
    • 2017-03-08
    • 1970-01-01
    • 1970-01-01
    • 2019-12-05
    • 2012-10-01
    • 2014-01-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多