2012-05-01 12 views
13

私はいくつかの日付をjavascriptで比較しようとしています。何らかの理由で、私はもちろんjavascript Date()。getTime()は関数ではありません

strings don't have methods

"火曜2012年5月1日午前16時43分03秒GMT + 0900(JST)は何のメソッド 'getTime' を持っていない" 私が始めた

を取得しています

0123:私はそれを切り詰めてきた

for (var i = 0; i < array_of_usage_indices.length; i++) { 
    store.get(array_of_usage_indices[i]['key'],function(may_need_gc) { 
     if(may_need_gc) { 
      var now = Date(); 
      var created = Date(may_need_gc['value']); 
      var age = now.getTime()-created.getTime(); 
     } 
    }) 
} 

ので、私の例のページは、文字通り、このです:コールバック内でこのコードは、それがvar ageを作成する行にgetTime()で失敗していました

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
    <head> 
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 
     <title>date test</title> 

    </head> 

<body> 

<script type="text/javascript" charset="utf-8"> 
      var now = Date(); 
      alert(now.getTime()); 
      var t = Date().getTime(); 
</script>  
</body> 
</html> 

これはChrome 18.0.1025.168とFirefox 13.0では失敗しています。私が試したものの

スクリーンショット:

screenshot no method 'getTime'

screenshot no method 'getTime'

だから私の質問:

WTH?

ParseDate()を使用する必要がありますか?なぜこれは機能しないのですか?

答えて

32

これは、日付として変数の型として '今' になります。この

var now = new Date(); 
+0

だから.now()は動作しませんが、.getTime()はなぜですか? – clocksmith

+0

@clocksmith 'Date.now()'(注:no parens)は動作しますが、 '.getTime()'にはDateオブジェクトが必要です。 http://stackoverflow.com/questions/12517359/performance-date-now-vs-date-gettime Docs:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objectsも参照してください。/Date/nowとhttps://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/getTime – handle

15

Dateオブジェクトを作成するには、new演算子を使用する必要があります。

(new Date()).getTime() 
+6

ありがとうございます。私はParvに緑色の小切手を渡しました。あなたが現在ポイントで大丈夫だと思われるからです。 ;-) –

4

を試みる代わりに、この

var now = Date(); 

のように、新しいオブジェクト をインスタンス化するnewキーワードを使用してみてください:

var now = new Date(); 

これで「今」からの時間が表示されます:

new Date(now).getTime(); 
関連する問題