是否可以为每次迭代声明一个不同的变量?这是一般的想法:
var userIds = [9110252, 55829847, 145189041]
for(u = 0; u < userIds.length; u++){
console.log(userIds[u]);
var user+userIds[u] = userIds[u];
}
答案 0 :(得分:1)
这是不可能的。但你也不需要:
您不会生成动态变量名称,但是您可以在for循环的每次迭代中使用一个不同的变量:
var userIds = [9110252, 55829847, 145189041]
for(u = 0; u < userIds.length; u++){
console.log(userIds[u]);
var user = userIds[u];
}
在第一次迭代中,user
将保持9110252,在第二次迭代时,新值将设置为变量user
:55829847,依此类推。
但是在这种情况下,正如@adeneo所说:你已经有userIds[u]
来引用该值。
答案 1 :(得分:1)
我们有这样的数组。为什么当一个数组变量可以为你做变量时你需要有不同的变量名称,并且它使代码易于管理。
答案 2 :(得分:1)
阅读有关问题的评论,并希望将其存储在本地存储中。我会这样做:
var userIds = [9110252, 55829847, 145189041];
for (var i = 0; i < userIds.length; i++) {
var userId = 'user' + userIds[i];
window.localStorage.setItem(userId, userIds[i]);
}
我建议重新考虑这种类型的存储,因为您现在正在存储冗余数据。它只与前面的“用户”一词区分开来。
用户@Abhishek Panjabi也提到这就是我们拥有阵列的原因。他这么说是对的。
向用户@adeno致信他的评论。