我在变量deadline
(Tue Jul 05 2016 18:15:00 GMT+0100 (BST)
new Date()
例如,如果我尝试执行:console.log(deadline.getTime())
我得到错误:deadline.getTime is not a function
但是当我在其上执行相同的功能时,new Date()
尽管日期的语法完全相同,它仍然可以正常工作。任何人都可以解释一下吗?谢谢。
我在变量deadline
(Tue Jul 05 2016 18:15:00 GMT+0100 (BST)
new Date()
例如,如果我尝试执行:console.log(deadline.getTime())
我得到错误:deadline.getTime is not a function
但是当我在其上执行相同的功能时,new Date()
尽管日期的语法完全相同,它仍然可以正常工作。任何人都可以解释一下吗?谢谢。
localStorage 中的所有值始终是字符串。当您Date
在 localStorage 中保存对象时,它会自动转换为string
.
所以当你找回你的最后期限时,它不是Date
,它是字符串表示。如果要调用Date
方法,则需要将字符串表示形式转换为Date
. 有可以帮助您的库(moment.js) 。
还有更简单的方法可以让您的约会回来。只是不要将其保存为默认字符串表示。将其保存为时间戳。然后,当您需要检索日期时,Date
从localStorage
.
//save in localStorage
localStorage.setItem( 'deadline', deadline_date.getTime() );
//load from localStorage
var deadline = new Date( localStorage.getItem( 'deadline' ) );