将日期格式化为发件人当地时间

2024-01-06

我很难获取带有偏移量的 UTC 日期字符串并将时间精确调整为用户当地时间。我在我们的服务器上收到一个日期说:2017-06-21T20:26:28.744Z我需要将其转换为发送者当地时间的时间戳。在本示例中,假设偏移量为 6 小时。

我知道这可能是错误的,z 部分解释了偏移量的真正含义.

我需要转弯2017-06-21T20:26:28.744Z into 2017-06-21T14:26:28使用时刻。

这样做似乎给了我字符串的 UTC 部分并削减了偏移量。我需要使用偏移量来调整小时/分钟

moment
  .utc('2017-06-21T20:26:28.744Z')
  .local()
  .format('YYYY-MM-DDTHH:mm:ss')
  // 2017-06-21T20:26:28" 
  // I need 2017-06-21T14:26:28

您可以使用utcOffset http://momentjs.com/docs/#/manipulating/utc-offset/

通过提供分钟来设置 UTC 偏移量。请注意,一旦设置了偏移量,它就是固定的,不会自行更改(即没有 DST 规则)。如果你想要一个实际的时区——特定位置的时间,比如America/Los_Angeles, 考虑时刻时区 http://momentjs.com/timezone/.

如果输入小于16并且大于-16,它会将您的输入解释为小时。

这是一个工作示例:

console.log( moment
  .utc('2017-06-21T20:26:28.744Z')
  .utcOffset(-6)
  .format('YYYY-MM-DDTHH:mm:ss') );
<script src="//cdnjs.cloudflare.com/ajax/libs/moment.js/2.18.1/moment.min.js"></script>

如果你想使用时刻时区,你可以使用tz() http://momentjs.com/timezone/docs/#/using-timezones/converting-to-zone/ method:

console.log( moment
  .utc('2017-06-21T20:26:28.744Z')
  .tz('America/Chicago')
  .format('YYYY-MM-DDTHH:mm:ss') );
<script src="//cdnjs.cloudflare.com/ajax/libs/moment.js/2.18.1/moment.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment-timezone/0.5.13/moment-timezone-with-data-2012-2022.min.js"></script>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将日期格式化为发件人当地时间 的相关文章

随机推荐

  • 使用 node.js 在 Azure 文件存储中上传文件

    我们正在尝试创建一个 Web 服务 以使用 node js 服务将文件上传到 Azure 文件存储 下面是node js服务器代码 exports post function request response var shareName r
  • 为什么 PRIVATE 成员函数不能成为另一个类的友元函数?

    class x void xx class y friend void x xx 这会导致类似的错误 错误 友元函数 xx 是 x 的私有成员 为什么我不能将私有成员函数声明为另一个类的友元 同学 朋友 9 http eel is c dr
  • iOS AppStore 上的 CCATS 和加密

    这将是一个很长的问题 实际上是一组相关的问题 我想制作一个 iOS 应用程序 将在 Apple 的 App Store 上出售 显然 我的应用程序将在文档目录中存储一些敏感的用户数据 出于安全原因 我想到了一种可以保护该数据的加密系统 有趣
  • 所得税计算的编程逻辑

    谁能帮我为我们的办公室员工工资税表创建 PHP 或 mysql 代码 这是我们税收监管的基础 If salary is gt 0 and lt 150 it will be 0 Nill If salary is gt 151 and lt
  • 删除完整磁盘上最旧的文件

    一个以 100MB 块将数据写入磁盘并通过附加 1 来增加文件名的应用程序 因此n1 n2 n1000 这最终会使用分区 Linux 主机 上的所有可用空间 我正在寻找一种方法来删除该系列中首次写入的文件 直到驱动器空间达到特定利用率 如果
  • 从窗口类名获取窗口句柄

    我试图在我的进程中获取子窗口的窗口句柄 我拥有的唯一信息是窗口类名称 我可以使用任何 win32 函数吗 我是用 C 做的 更详细一点 这是一个 Visual Studio 插件 用 C 编写 所以我的流程是 Visual Studio 它
  • 如何在PHP中通过计算总和来显示数据库中数量最多的酒店名称?

    我是 PHP 编码新手 我想根据用户从复选框中选择的偏好的相应计数 以升序显示数据库中的酒店名称 我的代码根据用户输入的偏好显示酒店名称 其逻辑是 如果数据库中针对该酒店的首选项名称下存在 1 则显示酒店名称 例如 如果用户从 7 个复选框
  • 是否可以将数据绑定到扩展方法?

    缺乏关于该主题的问题可能表明这里有代码味道 但是 是否可以为类编写扩展方法并像属性一样对其进行数据绑定 假设我提供了一个无法从根本上更改的类结构 但我想将其一系列布尔属性表示为字符串以用于显示目的 简化的基类 public class Tr
  • 如何为托管虚拟机配置 Google App Engine 运行状况检查端点

    Google App Engine 向托管虚拟机请求 ah health 进行运行状况检查 我尝试部署一个我不是代码维护者的项目 它将部署为托管虚拟机以进行自动缩放和运行状况检查 目前 app yaml 不支持重写规则 如果支持 我可以将
  • ruby:如何知道脚本是否在第三次重试?

    begin some routine rescue retry on third retry output no dice end 我想让它在 第三次 重试时打印一条消息 可能不是最好的解决方案 但一个简单的方法就是制作一个tries多变的
  • Selenium 上的 JavaScriptexecutor setAttribute 值

    我正在 IE11 上执行 selenium 自动化 现在对于一个元素 说 ele ele sendKeys characters 不直接工作 所以我试图改变它的 值 属性
  • 将参数传递给 javascript onclick 函数

    我在从 javascript onClick 函数获取参数时遇到问题 title as li class item li 我的控制台日志打印此 Uncaught SyntaxError Unexpected token 请不要使用内联js
  • 为什么 Eclipse 需要传入网络连接(使用 OS X)?

    有谁知道为什么 Eclipse 要求传入网络连接 我四处搜索 看到提到使用 PyDev 进行代码完成 但我在 PyDev 中禁用了代码完成 重新启动 但仍然提示传入网络连接 PyDev 生成一个 shell 并连接到它以请求有关内置模块的信
  • iphonecamerOverlay 用于替代现实应用程序

    有谁知道如何拍摄 iPhone 相机上捕获的图像 并进行一些图像处理 例如边缘检测 骨架化 然后将处理后的图像的一部分覆盖在原始图像上 例如仅突出显示的边缘 更一般地说 如何创建具有透明度的 UImage 我是否只是缩放图像并用 alpha
  • 为每个循环附加到新列表

    我正在运行一个 for 循环 并将一个值附加到循环中运行的每个文件的列表中 当我使用append 时 在第二次运行for循环期间 它将新值附加到与第一次运行循环中相同的列表中 有没有办法在每次循环运行时追加并创建一个新列表 phaseres
  • 将 CIFiler 应用于图像的遮罩部分

    我正在寻找一种将 CIFilter 应用于由蒙版定义的图像部分的方法 像这样 给定图像 来源http imageshack us scaled landing 213 browserpreviewtmp1p jpg http imagesh
  • 命令 PhaseScriptExecution 失败,退出代码非零 Xcode 11.3.1

    我正进入 状态Command PhaseScriptExecution failed with a nonzero exit code经常出错 我遵循以下解决方法但没有帮助我 解决方法1 钥匙串访问 gt 右键单击 登录 gt 再次锁定和解
  • 通用擦除概念

    您能帮我理解这里的通用概念吗 Can t create an instance of T class Gen
  • C++ 返回数组,数据丢失[重复]

    这个问题在这里已经有答案了 我是来自 Java 的 C 新手 所以请原谅我的天真 但我正在尝试从函数中传递数组 我知道执行此操作的方法是传递指针 如下所示 int foo int arr 3 1 2 3 int arrptr arr ret
  • 将日期格式化为发件人当地时间

    我很难获取带有偏移量的 UTC 日期字符串并将时间精确调整为用户当地时间 我在我们的服务器上收到一个日期说 2017 06 21T20 26 28 744Z我需要将其转换为发送者当地时间的时间戳 在本示例中 假设偏移量为 6 小时 我知道这