あなたの質問を見ると、後処理のために日付範囲をバックエンドに送信したいだけであることは明らかです。
データが特定の形式であることを期待する標準データガイドラインに準拠していると想定しています。たとえば、日時オブジェクトが次の形式であることを期待する RESTfull API である ODATA を使用します。
YYYY-MM-DDT00:00:00。
これは、以下に投稿されたスニペットを介して簡単に実現できます (要件に応じて形式を変更してください)。
var mydate;//assuming this is my date object which I want to expose
var UTCDateStr = mydate.getUTCFullYear() + "-" + mydate.getUTCMonth() + "-" + mydate.getUTCDate() + "T00:00:00";
一方、バックエンドから日付を受信し、ブラウザがそれをローカル日付に変換するという私の状況にある場合。一方、UTC 日付に関心がある場合は、次の操作を実行できます。
var mydate;//assuming this is my date object which I want to expose
var UTCDate = new Date(mydate);/*create a copy of your date object. Only needed if you for some reason need the original local date*/
UTCDate.setTime(UTCDate.getTime() + UTCDate.getTimezoneOffset() * 60 * 1000);
上記のコード スニペットは、基本的に、タイムゾーンに基づいてブラウザーによって加算/減算される時間を加算/減算します。
たとえば、EST(GMT-5) にいて、サービスが日時オブジェクト = Wed Aug 17 2016 00:00:00 GMT-0500 を返した場合、ブラウザはタイムゾーン オフセット (5 時間) を自動的に差し引いて現地時間を取得します。したがって、時間を取得しようとすると、2016 年 8 月 16 日水曜日 19:00:00 GMT-0500 になります。これは多くの問題を引き起こします。間違いなくこれを簡単にするライブラリがたくさんありますが、純粋な JS アプローチを共有したかったのです。
詳細については、http: //praveenlobo.com/blog/how-to-convert-javascript-local-date-to-utc-and-utc-to-local-date/をご覧ください。インスピレーション。
お役に立てれば!