localStorage [“something”] vs localStorage.something

时间:2012-08-23 16:26:17

标签: javascript local-storage

  

可能重复:
  JavaScript property access: dot notation vs. brackets?

我是Chrome扩展程序的新手。 我知道Java,但Javascript是完全不同的。

我想问一下localStorage["something"]localStorage.something之间有什么区别?

方括号vs点。

1 个答案:

答案 0 :(得分:4)

没有区别。实际上,JavaScript中的两种语法之间没有区别:

someObj.someProp === somObj["someProp"];

唯一的区别是某些字符在字符串中有效,而不是在点属性名称中有效:

someObj["some-prop"] // valid
someObj.some-prop // this is actually the value of `someObj.some` minus the value of `prop`

请注意,这两种在localStorage中存储值的方法也与使用.getItem.setItem方法相同。根据{{​​3}}:

  

每个存储对象都提供对键/值对列表的访问,有时称为

这些可以通过相同名称的对象属性访问和更改,也可以使用.getItem.setItem按名称引用它们。唯一的区别是可以覆盖函数以提供包装,例如,在存储之前将对象提供给JSON-ify:

localStorage.setItem = function(key, val) {
    localStorage[key] = JSON.stringify(val);
}
相关问题