在js中将map对象转换成json 和 js对cookie的操作
在js中将map对象转换成json
//msp转objectlet obj= Object.create(null);
for (let[k,v] of map) {
obj[k] = v;
}//object转json
JSON.stringify(obj);
js对cookie的操作
cookie是网站为了标识用户身份而存储在用户本地终端上的数据,一般这些数据都会进行加密,以防止数据篡改而造成用户信息泄露。cookie数据始终在同源的http请求中携带,他会在服务器和浏览器之间进行数据交互时进行来回传递。 对cookie不仅浏览器端可以进行操作,服务器端也可以进行操作,在这里只说一下浏览器端对于cookie的存取及删除操作。
添加cookie
在说操作之前,首先需要了解一下cookie是如何存储的,我们随便打开一个网站,在控制台输入document.cookie

我们发现cookie的存储方式是key=value; key=value的形式存储的,这里面全都是在有效期内的cookie。了解了存储方式,我们就可以进行set操作了:
let setCookie=(key, value, days) =>{
let now = new Date();
let expires = '';
let formatValue = '';
if(days){
now.setTime(now.getTime() + days * 24 * 60 * 60 * 1000);
expires = ";expires=" + now;
}
if(!key){
return false
}
try{
formatValue = JSON.stringify(value);
}catch(e){
console.log(e);
return false;
}
document.cookie = key + "=" + formatValue + expires;
}
我们设置的过期时间以天为单位,当你想关闭浏览器时就cookie就直接失效,则可不传入days,当不对cookie设置任何正、负或0时间,也就是说对expire不设置,他就会在浏览会话结束时过期。
获取cookie值
上面已经说过了document中存储cookie的形式了,而且过期的cookie不会出现在document.cookie中,这样我们在获取的时候只需要将其进行格式化即可:
let getCookie=key=> {
//如果cookie中有数据 才可以获取数据
if (document.cookie) {
let cookieInfo = document.cookie;
//cookie中可能会包含一些 额外的数据,这些数据特点是由 分号和空格间隔的
//所以 先将 分号和空格 替换掉 替换成 ;
let arr = cookieInfo.replace(/;\s/g, ';').split(";");
let item,brr
for (let i = 0; i < arr.length; i++) {
item = arr[i].split("=");
if (item[0] === key) {
brr = item[1];
return JSON.parse(brr);//如果找到 我们想要的键,将值转成数组返回
}
}
//如果cookie中 没有我们想获取的键值,直接返回一个空数组
return [];
}
//如果cookie中没有数据,直接返回一个空数组
return [];
}
删除cookie
删除cookie最简单的办法就是给cookie的过期时间设置一个过去的时间,让他过期就好:
let removeCookie=key=> {
setCookie(key, "", -1);
}
在js中将map对象转换成json 和 js对cookie的操作的更多相关文章
- json 字符串转换成对象,对象转换成json字符串
json 字符串转换成对象,对象转换成json字符串 前端: 方法一: parseJSON方法: [注意jquery版本问题] var str = '{"name":&qu ...
- 如何将字符串格式的对象转换成真正的js对象?
1.如何将字符串格式的对象转换成真正的js对象? <script>//eval 的作用eval('var a = 100');console.log(a);</script> ...
- Newtonsoft.Json 把对象转换成json字符串
var resultJson = new { records = rowCount, page = pageindex, //总页数=(总页数+页大小-1)/页大小 total = (rowCount ...
- js如何把字符串转换成json数据的方法
js如何把字符串转换成json数据的方法 function strtojson(str){ var json = eval('(' + str + ')'); return json; } 方法二 f ...
- DataTabel DataSet 对象 转换成json
public class DataTableConvertJson { #region dataTable转换成Json格式 /// <summary> ...
- Java对象转换成xml对象和Java对象转换成JSON对象
1.把Java对象转换成JSON对象 apache提供的json-lib小工具,它可以方便的使用Java语言来创建JSON字符串.也可以把JavaBean转换成JSON字符串. json-lib的核心 ...
- JSON对象转换成JSON字符串
1.问题背景 有一个json对象,需要将其转换成json字符串 JSON.stringify(obj) 2.实现源码 <!DOCTYPE html PUBLIC "-//W3C//DT ...
- 将Model对象转换成json文本或者json二进制文件
将Model对象转换成json文本或者json二进制文件 https://github.com/casatwy/AnyJson 注意:经过测试,不能够直接处理字典或者数组 主要源码的注释 AJTran ...
- SpringMVC分页查询无法直接将对象转换成json的解决办法(报org.springframework.http.converter.HttpMessageNotWritableException: No converter found for return value of type:错)
在用ajax获得分页数据时,无法将获取的值赋值给input标签,在修改用户信息时不显示用户已经注册的信息,百度可知 springmvc处理分页数据返回的对象时,无法直接将对象转换成json,会报org ...
随机推荐
- 读取ini配置文件 及 UI对象库
读取ini配置文件 配置项 读取API 写入API 实战:UI 对象库 读取ini配置文件 配置项 在每个 ini 配置文件中,配置数据会被分组(比如下述配置文件中的"config" ...
- 网络广告计费方式CPM、CPA、CPS、CPT、CPC及比较分析
网络上的广告计费方式,主要有以下几种: 按展现付费(CPM).每展现一千次,收费多少. 按点击付费(CPC).每带来一个点击收多少钱. 按时间付费(CPT).每放一天或者几个小时,收费多少. 按效果付 ...
- hdu1255 扫描线,矩形重叠面积(两次以上)
题意: 给你n个矩形,然后问你这n个矩形所组成的画面中被覆盖至少两次的面积有多大. 思路: 和1542差距并不是很大,大体上还是离散化+线段树扫面线,不同的地方就是这个题目要求 ...
- C#-web Post/Get
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.N ...
- Andrew Ng机器学习算法入门((七):特征选择和多项式回归
特征选择 还是回归到房价的问题.在最开始的问题中,我们假设房价与房屋面积有关,那么最开始对房价预测的时候,回归方程可能如下所示: 其中frontage表示的房子的长,depth表示的是房子的宽. 但长 ...
- 【JavaScript】【dp】Leetcode每日一题-解码方法
[JavaScript]Leetcode每日一题-解码方法 [题目描述] 一条包含字母 A-Z 的消息通过以下映射进行了 编码 : 'A' -> 1 'B' -> 2 ... 'Z' -& ...
- Yii2访问gii模块403
出现问题 访问Yii2的gii模块没有权限,403 找到原因 在Yii2-gii源码文件中(vendor/yiisoft/yii2-gii/src/Module.php)可以看到有一个配置项$allo ...
- liunx服务器安装jdk
1.官网下载需要版本的jdk,官网地址 http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.h ...
- .NET Design Patterns
设计模式分组 GoF设计模式著作中的23种设计模式分为3组:创建型(Creational).结构型(Structural)和行为型(Behavional). 创建型 创建型处理对象构造和引用.它们将对 ...
- 克鲁斯卡尔(Kruskal)算法(代码)
算法代码 C#代码 using System; using System.Linq; namespace Kruskal { class Program { static void Main(stri ...