前端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值; |

相关推荐
用户2181697049301 小时前
Flutter(四)Dart语法 空安全 运算符 流程控制
前端
许彰午1 小时前
政务督办的分合模式:主办协办的并发审批
前端·javascript·政务
用户69371750013841 小时前
AI时代,程序员该往哪走?
前端·后端
ttwuai1 小时前
GoFrame 后台日志清空失败:无 WHERE 删除为什么被拦住
前端·golang
易筋紫容1 小时前
创建型模式:对象的诞生艺术
开发语言·前端·javascript
888CC++1 小时前
C++ 快速学习指南:从入门到进阶的实战路线
开发语言·c++
小小晓.1 小时前
C++记:函数
开发语言·c++·算法
半句唐诗2 小时前
我是如何通过 Access Token 成功发布第一个 npm 包的
前端·npm·node.js
程序员黑豆2 小时前
鸿蒙应用开发:@Provider 与 @Consumer 跨组件双向同步详解
前端·harmonyos
牡丹雅忻12 小时前
AES 加密模式演进:从 ECB、CBC 到 GCM 的 C# 深度实践
java·开发语言·c#