zoukankan      html  css  js  c++  java
  • localStorage请使用getItem 和setITem

    最近看别人的代码,发现他们在从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(object)
    {
        localStorage.object = JSON.stringify(object);
    }
    //用getItem方式来实现:
    function storage_object (object)
    {
      localStorage.setItem(object,JSON.stringify(object));
    }

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

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

    locatStorage.count++

     我看见他的时候, 当时就蒙圈了。确实挺简单的,但是不容易懂啊。这是在考验我啊。

    大概就是这样。

  • 相关阅读:
    POJ 2018 二分
    873. Length of Longest Fibonacci Subsequence
    847. Shortest Path Visiting All Nodes
    838. Push Dominoes
    813. Largest Sum of Averages
    801. Minimum Swaps To Make Sequences Increasing
    790. Domino and Tromino Tiling
    764. Largest Plus Sign
    Weekly Contest 128
    746. Min Cost Climbing Stairs
  • 原文地址:https://www.cnblogs.com/susanws/p/5670290.html
Copyright © 2011-2022 走看看