打字稿将时间戳转换为mm-dd格式

Alo*_*lok 1 timestamp typescript angular-pipe angular

由于我们有一种将时间戳转换为时间格式的角度方式,但我在网上搜索了很多,因此没有很好的解决方案.

我已经遵循Javascript转换,但没有得到所需的结果.我需要以这种格式获取数据EEEE,MMMM d,即1月25日星期二我知道我们可以在我们的模板中使用管道实现这一点,但不知道如何在打字稿中获得这个.

到目前为止,我已经把它转换成了这个期望结果的字符串

formatDate(date) {
   let d = new Date(date * 1000)
   return d.getMonth() + 1 + "," + d.getDate
}
Run Code Online (Sandbox Code Playgroud)

并在我的代码中使用这样的

for(let i=0; i < this.lessons.length; i++){
      for(let j=1; j< this.lessons.length; j++){
        if(this.formatDate(this.lessons[i].start_time) === this.formatDate(this.lessons[j].start_time)){
          this.data.push({title: this.formatDate(this.lessons[i].start_time), lessons: []})
        }
      }
    }
    console.log(this.data)
  })
Run Code Online (Sandbox Code Playgroud)

但是我的控制台中没有运气就是这样:

{title: "NaN,function getDate() { [native code] }", lessons: Array(0)}
Run Code Online (Sandbox Code Playgroud)

任何人都可以帮助这个.提前致谢!

小智 8

那么,为什么不使用它的管道呢?

import { DatePipe } from '@angular/common';

const datePipe = new DatePipe('en-US');
const myFormattedDate = datePipe.transform(this.myTimeStamp, 'EEEE, MMMM d');
Run Code Online (Sandbox Code Playgroud)