【问题标题】:Converting Unix timestamp to Date Time String [duplicate]将 Unix 时间戳转换为日期时间字符串 [重复]
【发布时间】:2018-09-20 13:50:32
【问题描述】:

我想将 unix 时间戳(类似于 1537364040000)转换为 Date:Time String

为此,我做了类似的事情

this.selectedTime  = new Date(this.selectedTime*1000);

(在此之前我的 this.selectedTime 是一个 unix 时间戳)

这应该 console.log 这样的东西

console.log(this.selectedTime) //Tue May 24 50687 17:30:00 GMT+0530 (India Standard Time)
console.log(typeof this.selectedTime) //Object

在上面,typeof 恰好是一个对象,我希望它是字符串,所以我这样做了

this.selectedTime = JSON.stringify(this.selectedTime)

这是 console.logging 类似的东西

console.log(this.selectedTime)
"+050687-06-10T20:40:00.000Z"

[问题:] 谁能帮我弄清楚我们怎样才能得到这样的东西 Tue May 24 50687 17:30:00 GMT+0530 或者这个 Tue May 24 50687 17:30:00 作为字符串?

[问题更新:]:也有人可以帮助弄清楚它记录的内容是 50687 而不是正确的年份(5 月 24 日星期二 50687强> 17:30:00)

我正在使用 coincap 历史 API http://coincap.io/history/1day/BTC

【问题讨论】:

  • typeof this.selectedTime.toString()?
  • @ChrisSharp 我在这个问题中添加了 string 这个词
  • 什么是日期时间字符串?您想要的是一个日期时间对象,然后您可能希望以某种方式呈现它。没有日期时间字符串这样的东西。

标签: javascript


【解决方案1】:

您可以在创建时将日期对象设置为字符串:

this.selectedTime = 1537364040000;
this.selectedTime  = new Date(this.selectedTime*1000).toString();
console.log(this.selectedTime)

如果你不想要年份50687,那么就丢掉*1000

this.selectedTime = 1537364040000;
this.selectedTime  = new Date(this.selectedTime).toString(); /* no multiplier */
console.log(this.selectedTime)

【讨论】:

  • 更新了问题。看看你能不能也回答一下。
  • 失去*1000
【解决方案2】:

您可以尝试以下方法之一:

console.log(this.selectedTime.toString());
//"Fri Sep 21 2018 09:24:40 GMT+0200 (Mitteleuropäische Sommerzeit)"

console.log(this.selectedTime.toDateString());
//"Fri Sep 21 2018"

console.log(this.selectedTime.toISOString());
//"2018-09-21T07:26:28.793Z"

console.log(this.selectedTime.toGMTString());
//"Fri, 21 Sep 2018 07:27:00 GMT"

【讨论】:

  • 这个答案会更好,如果它显示了一个输出示例,也许会稍微解释一下为什么这会有所帮助。
猜你喜欢
  • 2019-07-30
  • 2011-03-16
  • 1970-01-01
  • 2017-10-11
  • 2012-06-23
  • 2011-09-23
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多