我意识到日期在JavaScript中可能非常棘手,但我遇到了一个有点奇怪的问题。
希望有人能够对此有所了解!
我正在从webshim datepicker获取日期输入并执行以下操作
var date = $scope.date;
console.log('date', date);
date.setTime(date.getTime() + date.getTimezoneOffset()*60*1000);
console.log('after set time', date);
将记录
的内容date "2025-06-19T00:00:00.000Z"
after set time "2025-06-19T12:00:00.000Z"
请注意,时间不同,但仍然是同一天(第19天)
但是,如果我切换到另一个视图并返回到此输入并再次记录输入(不同的日期,然后是上面的那个),我会得到类似
的内容date "2025-10-22T12:00:00.000Z"
after set time "2025-10-23T00:00:00.000Z"
小时数再次按预期变化,但这一天是休息一天(第23天与第22天)
如果我再次更改视图并再次返回,则记录的输出将返回到同一天。
基本上每次切换视图时都会切换此行为。这是非常不寻常的还是典型的问题?通过观点,我指的是Angular partials,例如
<script>
View 1
</script>
<script>
View 2
</script>
任何想法或建议都会非常棒。