在React Native / JavaScript中将EDT时间戳转换为本地时间

时间:2017-08-24 09:18:53

标签: javascript reactjs react-native

我从服务器获取时间戳(" 2017-08-18T04:51:25EDT")我想在将其显示给用户之前将其转换为本地时间。任何人都可以告诉我如何用moment.js或任何其他方式实现相同的目标吗?

2 个答案:

答案 0 :(得分:0)

使用反应时刻并从你的字符串中删除EDT(我实际上并不知道这种类型的日期格式,并且它说它无效,所以删除它并且它有效。)

以下是如何使用它的示例:

let dateToFormat = '2017-08-18T04:51:25';
return (
   <Moment>{dateToFormat}</Moment>
)

查看react-moment的文档:https://www.npmjs.com/package/react-moment

答案 1 :(得分:0)

EDT似乎不是一个有效的时区标识符,因为你可以看到它粘贴到这个小提琴时:

https://www.w3schools.com/js/tryit.asp?filename=tryjs_date_new_string

您能否将日期作为UTC时间戳或其他新日期(“DateString”)接受的内容?

否则你必须从时间戳字符串中剪切EDT,从中创建一个新的Date对象,然后手动添加时差。

然后可以使用

将日期objcet转换为区域设置时间字符串
dateObj.toLocaleDateString([locales [, options]])

你可以在这里看到: https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleDateString