在使用localstorage时,存储的值会被自动转换为字符串类型。当我们存储一个对象时,实际上被存储的是该对象的字符串表示形式,即调用对象的toString方法后得到的字符串。而当我们读取该值时,实际上得到的是该字符串,在这种情况下,在字符串两端带有引号是很常见的。
如果我们想要存储一个对象,可以使用JSON.stringify方法将该对象转换为JSON格式的字符串,然后再存储到localstorage中。当我们读取该值时,可以再使用JSON.parse方法将字符串转换为对象。示例代码如下:
// 存储一个对象 var obj = {name: 'Tom', age: 20}; localStorage.setItem('myObj', JSON.stringify(obj));
// 读取该对象 var objStr = localStorage.getItem('myObj'); var obj = JSON.parse(objStr); console.log(obj); // 输出 {name: 'Tom', age: 20}