如何检查变量是否与列表/数组中的任何其他变量具有相同的值?

时间:2017-09-29 15:14:07

标签: javascript html arrays

我有一个变量列表(例如:userList = [user1,user2,user3 ...]),每个变量都存储在本地存储中,其值为1或0。 现在我试图这样做,如果数组中的一个值(例如用户2)的值为1,则数组中的每个其他变量的值都设置为0.

这是我的数组(它很长,所以我只输入3个值):

var usernameAlphaLog = [
  localStorage.getItem("user1-log"), 
  localStorage.getItem("user2-log"), 
  localStorage.getItem("user3-log")...
]

1 个答案:

答案 0 :(得分:1)

简单地说,你做错了。

使用对象,使用键,并将其存储为JSON

var users = {user1 : 1, user2 : 0, user3 : 0, user4 : 0 };

然后,当你想要改变某些东西时,你可以

for (var key in users) users[key] = 0;
users['user2'] = 1;

您已将user2设为1,其他所有人设为0
要存储它,你可以

localStorage.setItem('users', JSON.stringify(users));

并获取它

var users = JSON.parse(localStorage.getItem('users'));

这比将每个键/值对存储在本地存储中简单得多,并且可以使用更新,更改等功能轻松扩展。