我在尝试在 TypeScript 中获取 Date
对象以按照我想要的方式格式化时遇到了一些麻烦。
我有一个类 Module
定义为:
export class Module {
constructor(public id: number, public name: string, public description: string,
public lastUpdated: Date, public owner: string) { }
getNiceLastUpdatedTime(): String {
let options: Intl.DateTimeFormatOptions = {
day: "numeric", month: "numeric", year: "numeric",
hour: "2-digit", minute: "2-digit"
};
return this.lastUpdated.toLocaleDateString("en-GB", options) + " " + this.lastUpdated.toLocaleTimeString("en-GB", options);
}
}
当我使用以下代码调用该方法时:
let date = new Date(1478708162000); // 09/11/2016 16:16pm (GMT)
let module = new Module(1, "Test", "description", date, "test owner");
console.log(module.getNiceLastUpdatedTime());
我最终在控制台中打印了以下内容:
'9 November 2016 16:16:02 GMT'
我想看到的是:
09/11/2015 16:16
我查看了以下文档: https ://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleDateString,但我仍然看不到我在做什么错误(我知道这是一个 JavaScript API 文档,但我很确定这是 TypeScript 在后台使用的)。
原文由 Matt Watson 发布,翻译遵循 CC BY-SA 4.0 许可协议
如果您想要超时以及想要的日期
Date.toLocaleString()
。这是直接来自我的控制台:
然后,您可以输入语言环境字符串和格式字符串以获得所需的精确输出。
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString