【发布时间】:2023-03-24 19:19:01
【问题描述】:
我在 Chrome 扩展程序中使用localStorage。
delete localStorage[key] 和 window.localStorage.removeItem(key) 之间有什么区别,或者它们的行为相同吗?
请注意,我选择window.localStorage.removeItem(key) 与spec 完全对应,但localStorage.removeItem(key) 可能是它在野外的样子。
【问题讨论】:
-
不需要指定window,因为这是我按下的原生JS函数。
-
localStorage 是窗口的属性,不是 JS 的。例如,iframe 将拥有自己的本地存储。换句话说,localStorage 是 HTML 规范的一部分,而不是 ES 规范的一部分。您不需要指定 window 的原因是它是全局对象。全局对象是 ES 规范的一部分:tc39.github.io/ecma262/#sec-global-object。
标签: google-chrome local-storage