【发布时间】:2020-07-16 08:40:08
【问题描述】:
如何计算我在 1 个本地存储键中有多少个不同的值。
例如:
这是我的本地存储:
[{"id":"item-1","icon":"google.com"},{"id":"item-2","icon":"youtube.com"}]
对于这个例子,我想要 2 个不同值的警报。所以基本上我想数一下{}..
这可能吗?
【问题讨论】:
标签: javascript jquery local-storage
如何计算我在 1 个本地存储键中有多少个不同的值。
例如:
这是我的本地存储:
[{"id":"item-1","icon":"google.com"},{"id":"item-2","icon":"youtube.com"}]
对于这个例子,我想要 2 个不同值的警报。所以基本上我想数一下{}..
这可能吗?
【问题讨论】:
标签: javascript jquery local-storage
localStorage 是一个对象,因此只需 localStorage.length 即可为您提供条目数。
但是我想我可能误解了你。你的意思是你有一个键,而那个键的值是一个JSON.stringify'd 对象?如果是这样,您可以使用JSON.parse(localStorage.keyname).length 来反序列化该值并计算其中有多少。
【讨论】:
您的对象被保存为一个数组,因此仅使用 .length 即可为您提供 {} 对的数量。试试这个(用你的数组名称替换“whatever”:
var something = localstorage.whatever[];
var length = something.length;
alert("length = " + length);
【讨论】:
这将为您返回密钥中的项目数
testing = JSON.parse(localStorage.getItem(KEYNAMEHERE));
//Lets count how many we have back
obj = eval('(' + testing + ')');
//And the total is...
objCount=0;
for(_obj in obj) objCount++;
alert(objCount)
【讨论】: