我正在使用bootstrap datepicker,其中选择的日期,ng-model $scope.taskInfo.startDate
包含所选日期Mon Jun 01 2015 00:00:00 GMT+0530 (India Standard Time)
ie。,$scope.taskInfo.startDate = Mon Jun 01 2015 00:00:00 GMT+0530 (India Standard Time)
但是当我对我的模型进行日期操作时,日期似乎跳了一天。
$scope.taskInfo.startDate.toISOString() = "2015-05-31T18:30:00.000Z"
正如您所看到的,我选择了2015年6月1日,但它已更改为2015年5月31日。有人遇到类似问题。请求您分享您的想法
答案 0 :(得分:1)
如toISOString() documentation中所述,此函数返回零UTC偏移中的日期(时间戳)。
您提供的时间戳位于“印度标准”时区。因此,这两个日期代表相同的确切时刻,但一个显示格林威治子午线的时间,另一个显示印度标准时区的官方时间恰好是5小时30分钟。
尝试使用.toString()代替,它将负责系统配置的时区:
$scope.taskInfo.startDate.toString()