前端JS必用工具【js-tool-big-box】,获取浏览器参数、cookie、localStorage的存取

这一小节,我们针对js-tool-big-box工具做一些使用讲解,主要获取浏览器参数、cookie、localStorage的存取方面的。

这些方法差不多每次项目中要么用不到,要么就自己写一份,轮子造的很重复啊,而且localStorage有时候要求设定过期时间,工具中也做了对应的开发。

工具中对外暴露了storeBox对象,可以供大家使用。

目录

[1 安装,引入](#1 安装,引入)

[2 获取浏览器url中,问号后面的参数值](#2 获取浏览器url中,问号后面的参数值)

[3 cookie的操作](#3 cookie的操作)

[3.1 设置cookie](#3.1 设置cookie)

[3.2 获取cookie值](#3.2 获取cookie值)

[3.3 删除cookie](#3.3 删除cookie)

[4 localStorage 的操作](#4 localStorage 的操作)

[4.1 设置localStorage](#4.1 设置localStorage)

[4.2 获取 localStorage的某个值](#4.2 获取 localStorage的某个值)


1 安装,引入

执行以下命令进行安装

npm i js-tool-big-box

业务代码中引入对应的使用对象

javascript 复制代码
import { storeBox } from 'js-tool-big-box';

2 获取浏览器url中,问号后面的参数值

例如我们项目中的url链接,带有问号,问号后面拼了很多参数,如

http://localhost:8080/#/404?type=text\&go2=232323\&q=my2521

这种,使用示例如下:

javascript 复制代码
const param = storeBox.getUrlParam('q');
    console.log('获取到q的参数为:::', param);

使用方法:

|-------------|-------------------------|-------------------|
| 方法名 | 返回值 | 入参 |
| getUrlParam | 对应的参数值,如果未找到返回undefined | 入参为参数的key值,必填 |

3 cookie的操作

3.1 设置cookie

设置cookie包括,设置key值,设置value值,设置过期时间,设置domain值,和设置path值

使用示例如下:

javascript 复制代码
storeBox.setCookie('school', '我的中学', 1000*10);
    storeBox.setCookie('name', 'zhangsan');

使用方法:

|-----------|-----|------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| 方法名 | 返回值 | 入参 |
| setCookie | 无 | 第一个参数必填,表示需要设置的key值; 第二个参数必填,表示需要设置的value值; 第三个参数非必填,表示需要设置cookie的过期时间,设置的毫秒数,如1000*60,表示1分钟; 第四个参数非必填,表示需要设置的domain; 第五个参数非必填,表示需要设置的path; |

3.2 获取cookie值

已经存过cookie了,如果需要获取,可以执行这个方法,示例代码如下:

javascript 复制代码
const myCookie1 = storeBox.getCookie('school');
    console.log('我设置过的school是::', myCookie1);

使用方法:

|-----------|------------------------------|----------------------------|
| 方法名 | 返回值 | 入参 |
| getCookie | 对应的value值,获取不到则返回undefined或空 | 第一个参数必填,表示需要匹配获取的key值; |

3.3 删除cookie

比如退出登录的时候,就需要删除用户名或者其他登录信息的cookie信息,这个时候就会用到这个方法了,示例代码如下:

javascript 复制代码
storeBox.deleteCookie('name');
    const myNmaeCookie = storeBox.getCookie('name');
    console.log('我已把name这个cookie删了::', myNmaeCookie);

使用方法:

|--------------|-----|------------------------------|
| 方法名 | 返回值 | 入参 |
| deleteCookie | 无 | 第一个参数必填,表示需要删除匹配获取的key值; |

4 localStorage 的操作

4.1 设置localStorage

因为localStorage存储的信息是永久有效的,所以很多时候需要设置过期时间,示例代码如下:

javascript 复制代码
storeBox.setLocalstorage('today', '星期一', 1000*6);

使用方法:

|-----------------|-----|----------------------------------------------------------------------------------------------------------------------|
| 方法名 | 返回值 | 入参 |
| setLocalstorage | 无 | 第一个参数必填,表示需要设置的key值; 第二个参数必填,表示需要设置的value值; 第三个参数非必填,表示如果需要设置过期时间的话,设置的过期时间,传入的是毫秒值,比如1000*60表示过期时间是1分钟 |

4.2 获取 localStorage的某个值

获取localStorage的时候,上一步的截图中发现,localStorage中存入了 isExpires这个属性,如果为true,表示之前存入的时候添加了过期时间,那么在获取的时候,会根据当前时间匹配是否已过期,如果过期则删除对应localStorage的设置。如果isExpires是为false,表示之前并未设置过期时间,这是永久有效的。

示例代码如下:

javascript 复制代码
const today = storeBox.getLocalstorage('today');
    console.log('6秒后获取的值===', today);

6秒后:

使用方法:

|-----------------|---------------|--------------------------|
| 方法名 | 返回值 | 入参 |
| getLocalstorage | 对应存入的值 或 null | 第一个参数必填,表示需要获取的key值; |

相关推荐
2601_949857432 分钟前
Flutter for OpenHarmony Web开发助手App实战:CSS参考
前端·css·flutter
无法长大3 分钟前
如何判断项目需不需要用、能不能用Tailwind CSS
前端·css·vue.js·elementui·vue3·tailwind css
阿猿收手吧!4 分钟前
【C++】constexpr动态内存与双模式革命
开发语言·c++
橙露5 分钟前
移动端前端适配:Rem、VW/VH 与媒体查询的综合应用指南
前端·媒体
小小码农Come on16 分钟前
QT开发环境安装
开发语言·qt
云深处@19 分钟前
【C++】哈希表
开发语言·c++
GGGG寄了20 分钟前
CSS——CSS引入方式+选择器类型
前端·css·html
墨染青竹梦悠然21 分钟前
基于Django+vue的图书借阅管理系统
前端·vue.js·后端·python·django·毕业设计·毕设
weixin_4521595522 分钟前
模板编译期条件分支
开发语言·c++·算法
guygg8822 分钟前
傅立叶光学的Matlab实现方法
开发语言·matlab