首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JavaScript Azure函数中的冲突时间戳

问JavaScript Azure函数中的冲突时间戳
EN

Stack Overflow用户
提问于 2018-12-21 23:47:27
回答 1查看 590关注 0票数 0

JavaScript Azure函数返回的时间戳位于默认UTC时区,而不是应用程序设置中设置的时区。

我想在计时器触发的Azure函数中比较使用JavaScript代码的时间戳。如果时间戳的前15个字符匹配,则执行操作。

  • 返回时间戳的代码是var timeStamp = new Date().toISOString();。
  • Azure函数的应用程序设置包括WEBSITE_TIME_ZONE \ Mountain State Time。
  • 当我在Azure函数的控制台中键入time时,将按预期返回山区状态时间中的当前时间。

index.js

代码语言:javascript
复制
      module.exports = async function (context, myTimer) {
         var timeStamp = new Date().toISOString();
         ...

         var timeStampB = result[i].CreatedDate;
         var timeStampBCut = timeStampB.substring(0, 15);

         var timeStampCut = timeStamp.substring(0, 15);

         if (new String(timeStampBCut).valueOf() == new String(timeStampCut).valueOf()) {
         ...

function.json

代码语言:javascript
复制
    {
      "bindings": [
        {
          "name": "myTimer",
          "type": "timerTrigger",
          "direction": "in",
          "schedule": "0 */25 * * * *"
        }
      ]
    }

(timeStampB在山岳时间。)

当我测试var timeStamp = new Date().toISOString();返回的var timeStamp = new Date().toISOString();时,结果是,例如,2018-12-21T23:35:18.894Z,它是UTC时间。但是,当我在Azure函数的控制台中输入time时,返回的时间是山区状态时间。

我希望时间戳在同一个时区,这样我就可以准确地比较两个时间戳的前15个字符。

谢谢你的帮助。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-12-31 18:35:05

最后,我使用力矩时区将MST时间戳转换为UTC,从而匹配Azure函数的时区。

代码语言:javascript
复制
var moment = require('moment-timezone');

var tz = 'America/Denver'
var mstTimeStampUtc = moment.tz(mstTimeStamp, tz).utc().format();
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53891951

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档