localStorage.getItem('item')
与localStorage.item
之间有什么区别?这两种访问localStorage中项目的方法之间有什么性能差异吗?
正在访问localStorage中的项目,如下所示:var i = localStorage.item比getItem函数调用更快?
localStorage.getItem('item')
与localStorage.item
之间有什么区别?这两种访问localStorage中项目的方法之间有什么性能差异吗?
正在访问localStorage中的项目,如下所示:var i = localStorage.item比getItem函数调用更快?
3条答案
按热度按时间jvlzgdj91#
localStorage.item
没有任何关于它的总是localStorage.getItem('itemname')
&localStorage.setItem('itemname' , value)
& localStorage.clear()wdebmtf22#
HTML标准指定
getItem
方法如下:1.如果
this
的map
[key]不存在,则返回null。1.返回
this
的map
[key]。从
Storage
接口定义进一步往下看,下面解释了map
是什么:存储对象具有关联的:
map存储代理Map。
然后这个
Storage对象存储上支持的属性名称是在存储的Map上运行get the keys的结果。
这至少证实了同时使用
getItem
和属性访问可以归结为访问Map以获得与键对应的值--这意味着getItem
方法和属性访问确实使用了相同的过程,因此可以为给定的键获得相同的值。这一点也在接近
Storage
接口规范的[非规范性]注解中提到,标题为“For web developers”:value = storage.getItem(key)
value = storage[key]
返回与给定键关联的当前值,如果给定键不存在,则返回null。
我引用的“HTML标准”链接自the Mozilla Developer Network page on
Storage
class,以及其他地方,它本身可以通过Google搜索localStorage
来发现。我建议您将Mozilla Developer Network站点添加为书签,并将其添加为搜索引擎,以便您可以快速发现您使用的Web API上的相关和重要信息。但不要将MDN视为理所当然-如果有疑问或习惯,找到他们试图解释的相关标准,看看你是否能阅读实际的规范,以清除所有疑问。flvlnr443#
localStorage.getItem('item ')和localStorage.item都用于访问浏览器localStorage中存储的项的值。
localStorage.getItem('item ')是一个方法调用,用于从localStorage对象中检索键为'item'的项的值,并将其作为字符串返回。该方法允许您通过将其键作为参数传递来检索存储在localStorage中的任何项的值。
localStorage.item是一个属性访问,从localStorage对象中检索key为'item'的项的值,并将其作为字符串返回。此属性访问相当于调用localStorage.getItem('item '),但只能用于检索key为有效JavaScript标识符的项的值。
一般情况下,建议使用localStorage.getItem('item ')代替localStorage.item,因为它更灵活,可以用来检索localStorage中任何项的值。但是,如果您知道要检索的项的键是有效的JavaScript标识符,则可以使用localStorage.item作为**localStorage.getItem('item')**的简写。