Momentjs moment.js和不推荐的警告。时刻日期对象的时间戳

Momentjs moment.js和不推荐的警告。时刻日期对象的时间戳,momentjs,Momentjs,我已经阅读了这里关于类似问题的各种帖子,但没有一篇能够解决我的问题 我操作moment.js date对象,然后将其存储为时间戳 但是,当我再次尝试读取该时间戳时,我得到了不推荐的警告 “”弃用警告:此时构造返回到js日期。这是不鼓励的,将在即将发布的主要版本中删除。有关详细信息,请参阅。“ 我尝试了toDate()、format()、moment(我的时间戳'ddd,DD-MMM-YYYY-HH:mm:ss-ZZ');-->所有这些都会生成警告 例如,我的时间戳如下所示: 常量时间戳='145

我已经阅读了这里关于类似问题的各种帖子,但没有一篇能够解决我的问题

我操作moment.js date对象,然后将其存储为时间戳

但是,当我再次尝试读取该时间戳时,我得到了不推荐的警告

“”弃用警告:此时构造返回到js日期。这是不鼓励的,将在即将发布的主要版本中删除。有关详细信息,请参阅。“

我尝试了toDate()、format()、moment(我的时间戳'ddd,DD-MMM-YYYY-HH:mm:ss-ZZ');-->所有这些都会生成警告

例如,我的时间戳如下所示:

常量时间戳='1458586740000'

当我读回它并试图解析出月/日/年,然后是小时/分钟am/pm,等等…我需要将时间戳放入一个矩.js对象中。对我来说没有任何效果。任何想法

如何将这个时间戳“1458586740000”放入一个moment.js对象中,以便根据需要从中提取日期

编辑:这就是我存储时间戳的方式。所以我需要从中检索它

let timeStamp = Moment(state[_Date])
                           .add({ hour: state[AMPM] === 'PM'
                                      ? +state[Hour] + 12
                                      : state[Hour] ,
                                  minute: state[Min] }).format('x')

X标记表示unix时间戳(以秒为单位),X标记表示unix毫秒时间戳(偏移量)。 您似乎有一个毫秒的时间戳,因此您可以通过执行以下操作来利用它:

var a = moment('1458586740000', 'x')
a.format()
"2016-03-21T13:59:00-05:00"
它也可以在没有以下条件的情况下工作:

var a = moment(1458586740000, 'x')
您也不能指定x,它应该可以工作:

moment(1458586740000)
因为您有一个unix偏移量(毫秒),而不是unix时间戳(秒),所以moment.unix不是您想要的

然后您可以执行以下操作:

var a = moment('1458586740000', 'x')
a.format()
"2016-03-21T13:59:00-05:00"
或者,您可以使用此处列出的任何其他格式化标记输出您想要的任何结果:


根据您提供的代码,我认为您可能遇到了问题,因为您的时间戳存储为字符串(在“”中)。解析为字符串会导致无效的日期错误,因为它尝试匹配ISO 8601格式,但失败。指定“x”标记将使其假定unix偏移量并正常工作。

x标记以秒为单位表示unix时间戳,x标记表示unix毫秒时间戳(偏移量)。 您似乎有一个毫秒的时间戳,因此您可以通过执行以下操作来利用它:

var a = moment('1458586740000', 'x')
a.format()
"2016-03-21T13:59:00-05:00"
它也可以在没有以下条件的情况下工作:

var a = moment(1458586740000, 'x')
您也不能指定x,它应该可以工作:

moment(1458586740000)
因为您有一个unix偏移量(毫秒),而不是unix时间戳(秒),所以moment.unix不是您想要的

然后您可以执行以下操作:

var a = moment('1458586740000', 'x')
a.format()
"2016-03-21T13:59:00-05:00"
或者,您可以使用此处列出的任何其他格式化标记输出您想要的任何结果:


根据您提供的代码,我认为您可能遇到了问题,因为您的时间戳存储为字符串(在“”中)。将时间戳解析为字符串会导致无效的日期错误,因为它试图匹配ISO 8601格式,但失败。指定“x”标记将使其假定为unix偏移量并正常工作。

您尝试过
矩.unix吗(timestamp).format(“MM/DD/yyyyy”)
?您是否尝试阅读链接问题?“如果您确实想要这种行为,只需执行
矩(新日期(“包含日期的随机字符串”)
"。因此,最终变量timeStamp被存储在数据库中,然后再次提取并解析?我几乎可以肯定最终传递给矩构造函数的数据有问题,但我不知道基于此代码会发生什么。这将为您提供一个unix偏移量作为字符串,应该可以。需要知道fr吗我想你可能有一些无关的前导字符或其他东西。我的意思是,它解析得很好,因为我能够将它从数据库中取出,并处理数据…只是出现了一个错误:“弃用警告…”。如果你跳上moment's Gitter,我今天下午可能可以和你谈谈。可能比在这么多评论中处理它更容易。你有没有尝试
moment.unix(timestamp).format(“MM/DD/yyyyy”)
?你有没有尝试阅读链接的问题?“如果你真的想做
moment(新日期(“包含日期的随机字符串”)
”。因此,最终变量timeStamp被存储在数据库中,然后再次提取并解析?我几乎可以肯定最终传递给矩构造函数的数据有问题,但我不知道基于此代码会发生什么。这将为您提供一个unix偏移量作为字符串,应该可以。需要知道fr吗我想你可能有一些无关的前导字符或其他东西。我的意思是,它解析得很好,因为我能够将它从数据库中取出,并处理数据…只是出现了一个错误:“弃用警告…”。如果你跳到《瞬间的Gitter》,我今天下午可能会和你聊天。可能比在评论中处理它更容易。谢谢-但它不起作用,是的-我以前尝试过这种方法。所以,是的,我有一个字符串代表了这一点:查看我更新的原始帖子。这就是我“存储”的方式它,也许它可以增加我需要如何提取它的洞察力。这里对我来说的关键是解析int,因为数字是一个字符串。谢谢-但它不起作用,是的-我以前尝试过这种方法。所以,是的,我有一个字符串代表了这一点:查看我更新的原始帖子。这就是我“存储”的方式它,也许它可以增加我需要如何提取它的洞察力。