Skip to content

前端数据存储组件,支持localStorage、cookie、userData

Notifications You must be signed in to change notification settings

tjuking/storage

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 

Repository files navigation

storage

storage.js是一个轻量级的前端数据存储组件,支持localStorage、cookie、userData

特点

  • 结合localStorage和userData,提供兼容更多浏览器的本地存储方案
  • 支持为localStorage和userData存储的数据设置过期时间
  • 提供cookie的相关操作接口
  • 支持批量存储数据
  • 在支持JSON的浏览器可进行JSON数据的存储和读取
  • 使用安全,不会因为特性不支持的情况导致报错(详情可查看caniuse中的已知问题)

接口

操作成功返回true(如果是获取数据的接口则返回存储的值),没操作或操作不成功则返回false

localStorage和userData

存储接口 - setItem(name, value, expires)

  • 参数name表示存储数据的key
  • 参数value表示存储数据的值
  • 参数expires表示存储数据的过期时间间隔(单位是毫秒),可以不设置,默认是始终存储
  • 可以同时存储一组数据,此时参数name为一个json对象,参数value则为过期时间间隔
  • 参数value可以为一个json对象,不过需要浏览器支持JSON的解析

读取接口 - getItem(name)

  • 参数name表示读取数据的key

删除接口 - removeItem(name)

  • 参数name表示删除数据的key

cookie

存储接口 - setCookie(name, value, options)

  • 参数name表示存储cookie的名称
  • 参数value表示存储cookie的值
  • 参数option可设置其它选项(非必填),例如:expires、domain、path、secure
  • 可以同时存储一组数据,此时的name为一个json对象,参数value为设置cookie的其它选项

读取接口 - getCookie(name)

  • 参数name表示读取cookie的名称

删除接口 - removeCookie(name)

  • 参数name表示删除cookie的名称

示例

localStorage和userData

//设置单个数据
Storage.setItem("name-1", "value-1");

//设置过期时间
Storage.setItem("name-2", "value-2", 24*60*60*1000);

//设置json格式数据
Storage.setItem("name-3", {
    "a": "value-3",
    "b": "value-3"
});

//设置一组数据
Storage.setItem({
    "name-4": "value-4",
    "name-5": {
        "a": "value-5",
        "b": "value-5"
    }
});

//获取数据
Storage.getItem("name-1");

//删除数据
Storage.removeItem("name-2");

cookie

//设置单个cookie
Storage.setCookie("name-1", "value-1");

//设置选项
Storage.setCookie("name-2", "value-2", {
    "expires": 30*24*60*60*1000,
    "domain": "*.example.com",
    "path": "/",
    "secure": true
});

//设置一组cookie
Storage.setCookie({
    "name-3": "value-3",
    "name-4": "value-4"
}, {
    "expires": 24*60*60*1000
});

//获取cookie
Storage.getCookie("name-1");

//删除cookie
Storage.removeCookie("name-2");

About

前端数据存储组件,支持localStorage、cookie、userData

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published