2023-10-08 在js 中怎么在localStorage

2023-10-07  本文已影响0人  流泪手心_521

在 JavaScript 中,localStorage 只能储存字符串类型的数据。如果要储存一个 Map 对象,需要先将其转换为字符串,然后再存储到 localStorage 中。

以下是一个示例代码:

// 创建一个 Map 对象
const myMap = new Map();
myMap.set('key1', 'value1');
myMap.set('key2', 'value2');

// 将 Map 对象转换为字符串
const mapString = JSON.stringify(Array.from(myMap.entries()));

// 将转换后的字符串存储到 localStorage 中
localStorage.setItem('myMap', mapString);


在上面的代码中,首先创建了一个 Map 对象 myMap,然后使用 Array.from(myMap.entries()) 将 Map 对象转换为一个二维数组,再使用 JSON.stringify() 将该数组转换为字符串。

最后,使用 localStorage.setItem() 将转换后的字符串存储到 localStorage 中,其中 'myMap' 是存储的键名。

要读取存储在 localStorage 中的 Map 对象,可以使用以下代码:

// 从 localStorage 中读取存储的字符串
const storedMapString = localStorage.getItem('myMap');

// 将字符串转换为 Map 对象
const storedMap = new Map(JSON.parse(storedMapString));

console.log(storedMap);

在上面的代码中,首先使用 localStorage.getItem() 从 localStorage 中读取存储的字符串,然后使用 JSON.parse() 将字符串转换为数组,再使用 new Map() 将数组转换为 Map 对象。

最后,将转换后的 Map 对象赋值给 storedMap,并打印输出。

上一篇 下一篇

猜你喜欢

热点阅读