2017-08-23 6 views
1

ファイル名を一意にするためにタイムスタンプを取得しようとしていますが、Dateオブジェクトが記述どおりに動作していないようです。Googleアプリケーションのスクリプトnew Date()undefined

var today = new Date(); 
var result = ui.alert(today.now()); 

この

var today = new Date(); 
var result = ui.alert(today); 

'未定義' を返しますが、長いフォーマットされた日付文字列を返します:水曜日2017年8月23日11時40分13秒GMT-0700(PDT)

私は入手できますかエポックからのミリ秒数?これはnow()メソッドが与えるはずのものではありませんか?

おかげで、

+0

[エポックからのミリ秒の計算]の可能な複製(https://stackoverflow.com/questions/9011758/calculating-エポックからのミリ秒) – abagshaw

答えて

1

あなたは、日付の文字列表現を解析し、1970年1月1日00:00:00 UTCからのミリ秒数を返しますDate.parseを使用することができます。

console.log(Date.parse('Wed Aug 23 2017 11:40:13 GMT-0700 (PDT)'));

または代替として(+演算子は、オブジェクトの数値表現を返します注意してください):

console.log(+new Date('Wed Aug 23 2017 11:40:13 GMT-0700 (PDT)'));

0

代わりの出力文字列を解析あなたは単純にDateオブジェクトを数値にキャストしようとしましたか?

var result = ui.alert(+today); 
0

Date.now()は静的です。今日のインスタンスの代わりにDateに使用します。

日付のインスタンスでミリ秒を使用する場合は、代わりにgetTime()を使用してください。

ので:

var today = Date.now(); 
var result = ui.alert(today); 

または

var today = new Date(); 
var result = ui.alert(today.getTime()); 

https://jsfiddle.net/k_24/qof04cvc/

編集:それは、過去に作成された何かに()は、現在使用しても意味がありません。)

関連する問題