Skip to content
本页目录

JavaScript localStorage

localStorage 是 Web Storage API 提供的一种本地存储机制,允许开发者在浏览器中存储和检索持久化的键值对数据。与 sessionStorage 不同,localStorage 中的数据在浏览器关闭后仍然存在,因此适用于需要长期保存的数据。

以下是 localStorage 的基本用法和一些常见操作:

存储数据

可以使用 localStorage.setItem(key, value) 方法将数据存储到 localStorage 中。其中,key 是要存储的数据的键,value 是对应的值。存储的值必须是字符串类型。

javascript
localStorage.setItem('username', 'John')
localStorage.setItem('age', '25')

获取数据

可以使用 localStorage.getItem(key) 方法根据键从 localStorage 中检索数据。如果键不存在,返回 null

javascript
var username = localStorage.getItem('username')
console.log(username) // 输出:John

更新数据

可以通过重新设置相同的键来更新 localStorage 中的数据。

javascript
localStorage.setItem('age', '26')

删除数据

可以使用 localStorage.removeItem(key) 方法来删除指定键的数据。

javascript
localStorage.removeItem('age')

清除所有数据

可以使用 localStorage.clear() 方法来删除 localStorage 中的所有数据。

javascript
localStorage.clear()

注意事项

  • localStorage 存储的值必须是字符串类型。如果需要存储其他数据类型(如对象或数组),可以使用 JSON.stringify() 方法将其转换为字符串存储,然后在需要时使用 JSON.parse() 方法将其还原。
javascript
var user = { name: 'John', age: 25 }
localStorage.setItem('user', JSON.stringify(user))

var storedUser = JSON.parse(localStorage.getItem('user'))
console.log(storedUser) // 输出:{ name: 'John', age: 25 }
  • localStorage 的存储容量是有限的,通常在几 MB 左右。因此,存储大量数据可能会导致溢出或性能问题。建议谨慎使用并根据实际需求控制数据量。

  • localStorage 是基于域名的。每个域名都有独立的 localStorage,不同域名之间的 localStorage 数据是相互隔离的。

  • 在使用 localStorage 时,需要注意浏览器对于隐私和安全方面的限制,例如隐私模式下的 localStorage 访问可能被限制。

localStorage 提供了一种简单而强大的在浏览器中进行本地持久化存储的方式。它可用于保存用户的首选项、配置信息、用户身份验证信息等。在实际应用中,可以根据具体需求合理使用 localStorage 来增强用户体验和数据持久性。

lemon's personal blog.