javascript - 如何正确设置 localStorage 变量

标签 javascript local-storage

在 localStorage 中设置变量的正确方法是什么?localStorage.hello = 'world'或者localStorage.setItem('hello','world')

最佳答案

使用的方法不太重要。 The standard列出以下方法是等效的:

storage.setItem (key, value)
storage[key] = value

Sets the value of the pair identified by key to value, creating a new key/value pair if none existed for key previously.


非常不寻常的情况,其中 setItemgetItem当原型(prototype)上的属性可能被引用时,将优于点符号分配或检索 - 例如使用 .length.__proto__ . (但是动态存储键是一个非常糟糕的主意 - 最好将它们组织到自己的数组或对象中的单个存储键中。如果键不是动态的,那么这种冲突不应该发生在健全的代码中,除非有人忘记了这一点length 保留)
有关 length 的有问题使用的示例带点符号:
localStorage.length = '123'
console.log(localStorage.length)
不会给你123 ,但存储中的键数。 (分配静默失败。)另一方面,使用 setItemgetItemlength (或任何其他任意字符串)将起作用。getItemsetItem与点表示法相比,它还与 TypeScript 和 Flow 等类型检查系统更兼容。
就我个人而言,当我不使用 TypeScript 并且存储键是静态的时,我使用点表示法,因为它更简洁并且不会造成任何问题。

关于javascript - 如何正确设置 localStorage 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68765815/

相关文章:

javascript - 为什么我的对象没有被推送到本地存储?

javascript - 将表格内容存储到 HTML5 本地存储

javascript - 语法错误在哪里

javascript - 从 timeoutID 获取 setTimeout 延迟

javascript - 在 iPad 上,confirm() 总是错误地停止默认操作

javascript - 退出当前调用堆栈 Javascript

javascript - 将值从 javascript 中的按钮传递给创建 localStorage 变量的函数

javascript - 在javascript中使用本地存储保存图像

javascript - 将图片设置为 Onsen UI Master-Details 元素

javascript - LocalForage、图像和 Blob