2016-04-14 14 views
0

私は2016-2-12 //( 'YYY-MM-DD')のような日付文字列を受け取るAPI呼び出しを持っています。MomentJS Parse Midnightローカル日付文字列

私は瞬間タイムゾーンを使用していますが、運がありません。

最終目標は、該当サイト(サーバーではなく)のタイムゾーンの深夜2016年2月12日のUNIXタイムスタンプを取得することです

私のようなものの組み合わせの多くを試してみました:

moment.tz('2016-2-12', 'America/New York').utc();

しかし、その後、私に前日の日付を与え、AFTERタイムゾーンの変換を行います(私のサーバーがUTCに設定されている)UTCとして入力日付を受け取るように思われます。

参考として、期間のレポートを生成しています。入力されたのであれば:

&start=2016-4-12&stop=2016-4-15 //and the timezone is America/New York

私は2016-4-12T00:00:00 -04:00の開始時間を期待するが、私は前日からの日数で終わる続けます。悪ふざけの時間後、私はそれを得た、とすぐに私は質問をして

moment.tz('2016-2-12', 'YYYY-MM-DD', 'America/New York').startOf('day').utc();

+0

ThあなたのAPIはタイムゾーンも受け入れるべきだと思います。 CMIIW –

+0

"*該当するサイトのタイムゾーン*"は、文字列をローカル(これはタイムゾーンがないため、ISO 8601ではなくECMAScript 2015であるため)として扱うことを意味します。これは他の多くのものと重複しています[* ISO 8601の日付文字列を解析する際のローカルタイムゾーンの設定方法*](http://stackoverflow.com/questions/15517024/how-to-assume-local-time-zone-when-parsing-iso-8601 -date-string)、moment.jsタグなし。 – RobG

答えて

0

私は関数が何かのようになることを期待しています。

moment.tz('2016-4-14', 'YYYY-MM-DD', 'America/New York').format();

moment.tz('2016-4-14', 'YYYY-MM-DD', 'America/New York').endOf('day').format();

は、同様に、私 2016-04-14T23:59:59-04:00を得ている...私は他の誰かが、これは便利見つけた願っています...ここで時間を無駄にし

申し訳2016-04-14T00:00:00-04:00を得ていますを使用して簡単にUNIXのタイムスタンプを取得することができますutc()

+0

これは、ホストの[* IANAタイムゾーン*](https://www.iana.org/time-zones)を知っている場合にのみ役立ちます。ローカルとして解析するのは簡単です([* ISO 8601の日付文字列を解析する際のローカルタイムゾーンの仮定方法*](http://stackoverflow.com/questions/15517024/how-to-assume-local-time-zone -when-parsing-iso-8601-date-string))。 – RobG

関連する問題