我们在学习js的cookie时,通常会测试将各种数据放到cookie中,数组就是其中一种。

值得一提的是,cookie中的各种数据都是以字符串的形式存储的,也就是说我们的数组存进cookie以后会变成字符串

下面我们来看一下实例:

代码:

<script>
	var arr = [1,2,3];
	document.cookie = "arr="+escape(arr)+";";
	function getContent(name){
		var offset = document.cookie.indexOf(name);
		if(offset != -1){
			offset += name.length+1;
			end = document.cookie.indexOf(";",offset);
			if(end == -1){
				end = document.cookie.length;
			}
			content = unescape(document.cookie.substring(offset,end));
			return content;
		}
		else{
			return "";
		}
	}
	var arr1 = getContent("arr");
	for(var x of arr1)
		console.log(x);
	console.log("arr1.length:::"+arr1.length);
</script>

效果: 

 

JS数组如何存放到Cookie中?

 这证明我们取出来的东西也包括",",解决办法:

我们使用split()函数将其重新转为数组

<script>
	var arr = [1,2,3];
	document.cookie = "arr="+escape(arr)+";";
	function getContent(name){
		var offset = document.cookie.indexOf(name);
		if(offset != -1){
			offset += name.length+1;
			end = document.cookie.indexOf(";",offset);
			if(end == -1){
				end = document.cookie.length;
			}
			content = unescape(document.cookie.substring(offset,end));
			return content;
		}
		else{
			return "";
		}
	}
	var arr1 = getContent("arr");
	for(var x of arr1.split(","))
		console.log(x);
	console.log("arr1.length:::"+arr1.length);
</script>

结果如下,问题解决。 

JS数组如何存放到Cookie中?

 

 

 

 

 

相关文章:

  • 2021-12-04
  • 2022-12-23
  • 2021-12-13
  • 2022-12-23
  • 2022-12-23
  • 2021-08-12
  • 2021-12-08
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2021-12-10
  • 2021-12-31
相关资源
相似解决方案