Javascript 日期显示前一天

标签 javascript angular date

<分区>

我在 Angular 应用程序中使用 mydatepicker。当用户单击特定日期时,我会得到选定的日期。但我想要这样的日期格式。

20180320

2018-03-20

所以我所做的就是如下转换。

onDateChange(event) {
    this.selectDate = event.jsdate.toISOString().slice(0,10)
}

这有助于我获得我的格式。但它显示前一天。这意味着,如果用户从日历中选择 2018-03-20,我的 selectDate = 2018-03-19

我可以使用 moment 来做到这一点,但对于这个项目,由于某些原因我没有使用它。有人可以帮我纠正这个问题吗?

最佳答案

试试这个来考虑时区

onDateChange(event){
    var localDate =  new Date(event.jsdate.getTime() - event.jsdate.getTimezoneOffset() * 60000);
    this.selectDate = localDate.toISOString().slice(0,10);
}

关于Javascript 日期显示前一天,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49496855/

相关文章:

javascript - 更改 Firefox 中的警报选项卡/窗口焦点

javascript - shadowdomv1 在 firefox 上的兼容性

javascript - 使用 FormGroups 的 FormArray 修补 Angular 响应式表单

php - 如何从html输入向MySQL插入日期?

sql - 想要在配置单元中将时间戳转换为日期格式

javascript - 处理 Meteor 和 mongodb 中的嵌套字典

javascript - Opera Mini 是否支持 window.confirm()

javascript - Angular 7 : How to access/send only body part of HTTP Response from test case

Angular 通用 SSR API 从前端调用两次,从后端调用第二次

java - 尴尬的 Java 日期创建行为