JavaScript-用for循环项声明变量

JavaScript - declare variable with for loop item

本文关键字:声明 变量 循环 for JavaScript-      更新时间:2023-09-26

是否可以为每次迭代以不同的方式声明变量?以下是总体思路:

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命名时,为什么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也提到,这就是我们拥有阵列的原因。他这样说是对的。

感谢用户@aeno的评论。