我正在localstorage中保存值,如下所示
key
= profskill,value
=“a,b,c”
我的test.ts
文件,我已声明数组但我无法获取结果,代码如下所示 -
getskills: Array<string> = [];
this.getskills = localStorage.getItem("profskill");
但这是错误的 -
类型'string'不能分配给'string []'
请帮助,我想获取这样的价值 -
console.log(this.getskills[0]);
答案 0 :(得分:3)
因为,您希望逗号分隔值表示为this.getskills
使用split
的{{1}}
以下是示例
localStorage
&#13;
答案 1 :(得分:2)
LocalStorage只能存储字符串,而不能存储对象或数组。如果您尝试存储数组,它将自动转换为字符串。您需要将其解析回数组:
JSON.parse( localStorage.getItem("profskill") )
答案 2 :(得分:1)
localStorage
仅支持字符串。使用JSON.stringify()
设置存储中的数据,使用JSON.parse()
从存储中获取数据,然后使用split(",")
拆分逗号分隔数据。
var obj = "a,b,c";
localStorage.setItem("profskill", JSON.stringify(obj));
var getskills = [];
getskills = JSON.parse(localStorage.getItem("profskill")).split(",");
console.log(getskills[0]);