日付をどのように表示しますか? それらを「日付オブジェクト」または文字列にしますか? コードに表示する値 (new Date(1355184000000)) は次のものに対応しMon Dec 10 16:00:00 PST 2012
ます。Logger.log(new Date(1355184000000))
それどころか、"16/11/2012"
おそらく日付ではなく文字列です... (注:あなたが英国にいるのをプロフィールで見たので、「日/月/年」の順序を使用しているのは奇妙です。mm/を使用すると思いました代わりに dd/yyyy) .
これらのアイテムに対していくつかの計算を行う必要があると言ったので、スクリプトで使用するには、すべてを日付オブジェクトに変換する必要があると思います。エラーを生成せずにこれを行う方法を正確に確認するには、日付オブジェクトに関するドキュメントを参照することをお勧めします。JavaScript の日付は常にhh:mm:ss およびミリ秒単位の日付と時刻であることを忘れないでください。表示された整数値は、1970 年 1 月 1 日からのミリ秒数でした ;-)
また、このフォーラムで日付を検索すると、非常に多くの興味深い情報を見つけることができます。
説明する小さな関数を次に示します。
function playWithTime(){
Logger.log('ref date = '+new Date(0))
var example = "june 30, 2013 23:59:00"
Logger.log(example+' = '+ new Date("june 30, 2013 23:59:00"))
Logger.log(example+' = '+ new Date("june 30, 2013 23:59:00").getTime()+' mS')
}
これは Logger に表示されます:
ref date = Thu Jan 01 1970 01:00:00 GMT+0100 (CET)
june 30, 2013 23:59:00 = Sun Jun 30 2013 23:59:00 GMT+0200 (CEST)
june 30, 2013 23:59:00 = 1372629540000 mS
ところで、ロガーは、タイムゾーンの夏時間に応じて、さまざまな方法で値を返すことに注意してください...私はベルギーにいて、6月は「夏」時間(CEST)です。また、Google サーバーのタイムゾーンである PDT または PST で表示することもできます。ロガーが一定であることに依存することはできません (!!) が、それは別の話です ;-)
編集:日付文字列が dd/mm/yyyy の形式である場合は、おそらく次のコードのように並べ替える必要があります。
function playWithTime2(){
Logger.log('original date string in UK format = 16/11/2012')
var d = "16/11/2012".split('/');
var d_ordered=d[1]+'/'+d[0]+'/'+d[2]
Logger.log('becomes '+d_ordered+' = '+new Date(d_ordered))
}
どちらが返されますか
original date string in UK format = 16/11/2012
becomes 11/16/2012 = Fri Nov 16 2012 00:00:00 GMT+0100 (CET)