2016-07-17 25 views
0

私はdatepickerから時間を得ています。私は1516年7月15日を選択し、sdの変数をチェックすると、2016年7月15日00:00:00 GMT 変数に次の行の後に変数filterDataSearchFilter.startDateTimeが設定された後、15日ではなく14-july-2016となります。日時が間違っています。

どうしてですか?なぜ瞬間が私に"2016-07-10T12:00:00.000Z"なく"2016-07-11T12:00:00.000Z"

goButtonSearchFilter() { 
     debugger; 
     if (this.filterDataSearchFilter.startDateTimeNonUtc != null) { 
      var sd = this.filterDataSearchFilter.startDateTimeNonUtc.toString(); 
      this.filterDataSearchFilter.startDateTime = moment(this.filterDataSearchFilter.startDateTimeNonUtc).startOf('day').toISOString(); 
     } 
+1

GMTニュージーランドは矛盾しています。 – robertklep

+0

実際に何を達成しようとしていますか? Noon UTCが*どちらかの日に欲しい理由は不明です。 –

答えて

0

問題を与えていることは、それはタイムゾーンのオフセットを考慮することが失敗したtoISOString()ですが、現時点ではありません。モーメントはすでにあなたにその日の始まりを与えていますが、時間軸はオフセットされていますので、その時間を過去のものに取り、何時間も費やすことはありません。

希望します。

+1

'toISOString' *はオフセットを考慮します - 結果を生成する前に現地時間からUTCに変換します。 'Date'オブジェクトの' toISOString'のバージョンも同じように動作します。 –

関連する問題