2013-10-07 122 views
0

我越來越假了兩個條件需要JavaScript的日期邏輯

localStorage.getitem("dl-visited-date") // "Mon Oct 07 2013 13:58:18 GMT-0400 (EDT)"; 
currentDate // Tue Oct 08 2013 14:18:26 GMT-0400 (EDT) 
currentDate > localStorage.getItem("dl-visited-date") //false 
currentDate < localStorage.getItem("dl-visited-date") //false 

回答

3

localStorage.getitem不會返回清晰度(當你保存它在你的localStorage Date對象含蓄字符串化)。如果您將其與Date對象進行比較,則兩者都將轉換爲數字,但對於Date對象而言,該字符串將變爲NaN。而且這比較false任何東西。

你需要之前分析它(使用Date constructor):

var date = new Date(localStorage.getitem("dl-visited-date")), 
    currentDate = new Date(); 

如果你想測試他們平等,你需要,而不是使用純數字。使用Date.parse則:

var dateStamp = Date.parse(localStorage.getitem("dl-visited-date")), 
    currentDateStamp = Date.now(); 
+0

我怎麼轉換字符串轉換成日期或反之亦然? – tv4free

0
$(function() { 
    var dateformate = localStorage.getItem("selectedFormat"); 

    alert(dateformate); 
});