1. const localStorage = (function () {
    2. let store = {}
    3. return {
    4. getItem: function (key) {
    5. return store[key] || null
    6. },
    7. setItem: function (key, val, time) {
    8. time = Number(time) || 0;
    9. store[key] = val.toString();
    10. if (time > 0) {
    11. this.timeOut(key, time);
    12. }
    13. },
    14. timeOut: function (key, time) {
    15. var timer = setTimeout(() => {
    16. this.removeItem(key);
    17. clearTimeout(timer)
    18. }, time);
    19. },
    20. removeItem: function (key) {
    21. delete store[key]
    22. },
    23. clear: function () {
    24. store = {}
    25. }
    26. }
    27. })()
    28. Object.defineProperty(window, 'localStorage2', {
    29. value: localStorage
    30. })