const localStorageMock = (function() {
let store = {}
return {
getItem: function(key) { return store[key] || null },
setItem: function(key, value) { store[key] = value.toString() },
removeItem: function(key) { delete store[key] },clear: function() { store = {} },
}
})()
Object.defineProperty(window, 'localStorage2', {
value: localStorageMock
})
localStorage2.setItem('test', 'test')
console.log(localStorage2.getItem("test")) //test
localStorage2.removeItem('test')
console.log(localStorage2.getItem("test")) //null
localStorage2.setItem('test', 'test')
localStorage2.clear()
console.log(localStorage2.getItem("test")) //null
js模拟实现一个localStorage
未经允许不得转载:阿锋哥前端开发经验分享 » js模拟实现一个localStorage