繁体   English   中英

JavaScript-使用for循环项目声明变量

[英]JavaScript - declare variable with for loop item

是否可以为每个迭代声明不同的变量? 这是一般的想法:

var userIds = [9110252, 55829847, 145189041]

    for(u = 0; u < userIds.length; u++){

        console.log(userIds[u]);

        var user+userIds[u] = userIds[u]; 
}

这是不可能的。 但您也不需要:

您不会生成动态变量名,但是在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]引用该值。

我们有用于此的数组。当一个数组变量可以为u做变量时,为什么要使用不同的变量名,这也使得代码易于管理。

阅读有关问题的评论,并将其存储在本地存储中。 我会这样做:

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的评论。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM