前端localStorage用法(JSON.stringify()、join() )

        localStorage 只能存储字符串类型的数据,而数组是一种复合数据类型,直接存储数组会报错。但是,我们可以将数组转换成字符串类型,再存储到 localStorage 中。常用的方法有两种:

1、使用 JSON.stringify() 方法将数组转换成字符串

var arr = [1, 2, 3];
localStorage.setItem('myArray', JSON.stringify(arr));

        这里的 JSON.stringify() 方法可以将数组转换成 JSON 格式的字符串,然后再存储到 localStorage 中。如果要取出存储的数组,可以使用 JSON.parse() 方法将字符串转换成数组。

var savedArr = JSON.parse(localStorage.getItem('myArray'));
console.log(savedArr); // [1, 2, 3]

2、使用 join() 方法将数组转换成字符串

var arr = [1, 2, 3];
localStorage.setItem('myArray', arr.join(','));

        这里的 join() 方法可以将数组中的元素用逗号分隔成一个字符串,然后再存储到 localStorage 中。如果要取出存储的数组,可以使用 split() 方法将字符串转换成数组。

var savedArr = localStorage.getItem('myArray').split(',');
console.log(savedArr); // ["1", "2", "3"]

        需要注意的是,使用 join() 方法和 split() 方法将数组转换成字符串和字符串转换成数组时,数组中的元素会被转换成字符串类型。如果存储的数组中包含对象、函数等引用类型的元素,需要使用 JSON.stringify() 和 JSON.parse() 方法进行转换。

猜你喜欢

转载自blog.csdn.net/weixin_44799217/article/details/131370227