需要明确javascript日期逻辑

时间:2013-10-07 18:29:04

标签: javascript datetime local-storage

我对两种情况都是假的

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

2 个答案:

答案 0 :(得分:3)

localStorage.getitem会返回一个字符串(当您将Date对象存储在localstorage中时,它会被隐式字符串化)。如果将其与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();

答案 1 :(得分:0)

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

    alert(dateformate);
});