`

localStorage

 
阅读更多

最近看别人的代码,发现他们在从localStorage里面的时候喜欢用dot来操作,而不是get setItem,记得以前说过这个事。下面再说一次吧。

用dot方式来操作( 每次以'hello'=>'world','zhangsan'=>'lisi'来做为例子

设值   
localStorage.hello = 'world';  
localStorage.zhangsan = 'lisi';  
取值:  
var value_of_hello_in_localStorage = localStorage.hello;  
var value_of_zhangsan_in_localStorage = localStorage.zhangsan 

  用getItem setItem来操作

 

 

 

设值:  
localStorage.setItem("hello", "world");  
localStorage.setItem("zhangsan", "lisi");  
取值:  
localStorage.getItem("hello");  
localStorage.getItem("zhangsan"); 

 

 这两种方法的效率我不清楚,但是为什么推荐使用get setItem呢?

1.容易控制,便于动态绑定,尤其在函数抽离和重构中。比如我要存一个复杂类型,每次存的时候都需要做JSON.stringify(object_a),所以我把它抽成函数

//用dot方式来实现设值:  
function storage_object(key,object_value)  
{  
    localStorage.key = JSON.stringify(object_value);  
}  
//用getItem方式来实现:  
function storage_object (key,object_value)  
{  
  localStorage.setItem(key,JSON.stringify(object_value));  
} 


 这时候就会明显的发现用dot的方式是很不合适的。因为他不能实现动态的绑定key。

2.感觉用getItem更美观,容易读懂。这个是个人意见。我记得我看过一段代码,作用大概是实现计数吧

 

locatStorage.count++ 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics