javascript - JS文字列を8時間差のタイムスタンプに変換する問題
怪我咯
怪我咯 2017-05-19 10:18:39
0
3
789

var time = new Date('2014-07-03'); //2014 年 7 月 3 日木 08:00:00 GMT 0800 (中国標準時)
Date.parse(time); //1404345600000


var time = new Date('2014-7-3'); //2014 年 7 月 3 日木 00:00:00 GMT 0800 (中国標準時)
Date.parse(time); //1404316800000


0をクリアした後、なぜあと8時間もあるのですか?

怪我咯
怪我咯

走同样的路,发现不同的人生

全員に返信(3)
黄舟

ECMA-262 ed 3 によれば、時間解析は異なる方法で処理される可能性があります。

ES5 では、タイムゾーンが指定されていない場合、ISO 8601 形式の文字列は UTC に解析され、非 ISO 8601 文字列を処理するための統一された動作はありません。

ES2015 では、タイムゾーンが指定されていない文字列はローカル時間 (システム時間に従って) に解析されます。

このフォーム内のすべての文字列を現地時間として処理したい場合は、自分で関数を書くことができます:

リーリー
いいねを押す +0
某草草

私も少し前にこの問題を目にしました。

日付の形式を「2014/07/02」に変更すると、通常は0時に変換されます。

参考: Xuanfengge http://www.xuanfengge.com/js-...

いいねを押す +0
小葫芦

Firefoxでは正常です

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート