We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
参考文章
if (!window.localStorage) { window.localStorage = { getItem: function (sKey) { //hasOwnProperty判断自身属性是否存在 if (!sKey || !this.hasOwnProperty(sKey)) { return null; } //unescape()函数可对通过 escape() 编码的字符串进行解码。 return unescape(document.cookie.replace(new RegExp("(?:^|.*;\\s*)" + escape(sKey).replace(/[\-\.\+\*]/g, "\\$&") + "\\s*\\=\\s*((?:[^;](?!;))*[^;]?).*"), "$1")); }, key: function (nKeyId) { return unescape(document.cookie.replace(/\s*\=(?:.(?!;))*$/, "").split(/\s*\=(?:[^;](?!;))*[^;]?;\s*/)[nKeyId]); }, setItem: function (sKey, sValue) { if(!sKey) { return; } document.cookie = escape(sKey) + "=" + escape(sValue) + "; expires=Tue, 19 Jan 2038 03:14:07 GMT; path=/"; this.length = document.cookie.match(/\=/g).length; }, length: 0, removeItem: function (sKey) { if (!sKey || !this.hasOwnProperty(sKey)) { return; } document.cookie = escape(sKey) + "=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/"; this.length--; }, hasOwnProperty: function (sKey) { return (new RegExp("(?:^|;\\s*)" + escape(sKey).replace(/[\-\.\+\*]/g, "\\$&") + "\\s*\\=")).test(document.cookie); } }; window.localStorage.length = (document.cookie.match(/\=/g) || window.localStorage).length; }
扩展 localStorage 支持 expires
(function () { var getItem = localStorage.getItem.bind(localStorage) var setItem = localStorage.setItem.bind(localStorage) var removeItem = localStorage.removeItem.bind(localStorage) localStorage.getItem = function (keyName) { var expires = getItem(keyName + '_expires') if (expires && new Date() > new Date(Number(expires))) { removeItem(keyName) removeItem(keyName + '_expires') } return getItem(keyName) } localStorage.setItem = function (keyName, keyValue, expires) { if (typeof expires !== 'undefined') { var expiresDate = new Date(expires).valueOf() setItem(keyName + '_expires', expiresDate) } return setItem(keyName, keyValue) } })()
使用
localStorage.setItem('key', 'value', new Date() + 10000) // 10 秒钟后过期 localStorage.getItem('key')
The text was updated successfully, but these errors were encountered:
No branches or pull requests
用 cookie 模拟 localStorage
参考文章
扩展 localStorage 支持 expires
使用
The text was updated successfully, but these errors were encountered: