我想在 .ts
文件中将当前日期转换为 'yyyy-MM-dd'
格式。在模板中,可以通过使用日期管道轻松完成。如何在 TypeScript 中实现?
在模板中:
{{date | date:'yyyy-MM-dd'}}
如何在typescript中将日期格式转换为'yyyy-MM-dd'?
我只是使用以下方法获取当前日期。
this.date = new Date();
但我需要将其转换为给定的格式。
我想在 .ts
文件中将当前日期转换为 'yyyy-MM-dd'
格式。在模板中,可以通过使用日期管道轻松完成。如何在 TypeScript 中实现?
在模板中:
{{date | date:'yyyy-MM-dd'}}
如何在typescript中将日期格式转换为'yyyy-MM-dd'?
我只是使用以下方法获取当前日期。
this.date = new Date();
但我需要将其转换为给定的格式。
使用Datepipe可以将 TypeScript 中的日期转换为这种格式'yyyy-MM-dd'
import { DatePipe } from '@angular/common'
...
constructor(public datepipe: DatePipe){}
...
myFunction(){
this.date=new Date();
let latest_date =this.datepipe.transform(this.date, 'yyyy-MM-dd');
}
只需在app.module.ts的'providers'数组中添加Datepipe即可。像这样:
import { DatePipe } from '@angular/common'
...
providers: [DatePipe]
formatDate()
е‡Ңж•°пәЊеЏҒйњЂд»Һ@angular/common
дёеҮәе…ӨеҚіеЏҮгЂ‚https://angular.io/api/common/formatDate - austin我在我的项目中也遇到了同样的问题。感谢 @Umar Rashed,但我将详细解释一下。
首先,在 app.module 中提供 Date Pipe:
providers: [DatePipe]
将其导入到您的组件和 app.module 中:
import { DatePipe } from '@angular/common';
其次,在构造函数下声明:
constructor(
public datepipe: DatePipe
) {
日期来自服务器并且会被解析成如下形式输出到控制台:
2000-09-19T00:00:00
使用以下代码将日期转换为所需格式; TypeScript:
this.datepipe.transform(this.birthDate, 'dd/MM/yyyy')
从HTML模板中展示:
{{ user.birthDate }}
并且它看起来是这样的:
19/09/2000
在网站上也可以看到这样的内容: 筛选后显示的日期(点击查看截图)
你也可以使用 formatDate
let formattedDt = formatDate(new Date(), 'yyyy-MM-dd hh:mm:ssZZZZZ', 'en_US')
一个简单的解决方法就是写:
this.date = new Date().toLocaleDateString();
日期 .toLocaleDateString()
时间 .toLocaleTimeString()
日期和时间 .toLocaleString()
希望这可以帮到你。
你也可以尝试这个方法。
以今天的日期'2018年12月28日'为例。
this.date = new Date().toISOString().slice(0,10);
new Date() 的输出结果为:Fri Dec 28 2018 11:44:33 GMT+0530 (印度标准时间)
使用 toISOString() 方法转换后的结果为:2018-12-28T06:15:27.479Z
使用 slice(0,10) 方法截取前十个字符,即包含年月日的 yyyy-mm-dd 格式日期为:2018-12-28。
2018-12-31T23:55:00.000Z
吗? - youhansconst formatDate=(dateObj)=>{
const days = ["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];
const months = ["January","February","March","April","May","June","July","August","September","October","November","December"];
const dateOrdinal=(dom)=> {
if (dom == 31 || dom == 21 || dom == 1) return dom + "st";
else if (dom == 22 || dom == 2) return dom + "nd";
else if (dom == 23 || dom == 3) return dom + "rd";
else return dom + "th";
};
return dateOrdinal(dateObj.getDate())+', '+days[dateObj.getDay()]+' '+ months[dateObj.getMonth()]+', '+dateObj.getFullYear();
}
const ddate = new Date();
const result=formatDate(ddate)
document.getElementById("demo").innerHTML = result
<!DOCTYPE html>
<html>
<body>
<h2>Example:20th, Wednesday September, 2020 <h2>
<p id="demo"></p>
</body>
</html>
只需使用:
today:string = new Date().toJSON().slice(0,10).replace(/-/g,'/');