javascript - for 循环和变量范围

标签 javascript for-loop

我正在尝试找出做某事的最佳方法。 我有一个充当 HTML 模板的变量,并插入对象数组中的属性。简单代码如下:

i = 0;
v =  "<li>",
v += array[i].prop,
v += "</li>";

对象数组:

array = new Array();
array[0] = { name: "1",
             prop: "Property 1"
           }
array[1] = { name: "2",
             prop: "Property 2"
           }

这就是让我着迷的一点:

for (; i < array.length ;) {
    i += 1;
    console.log(i);
    $("body").append(v);
}

i 在控制台中返回为 0 和 1,但 prop 值返回为“Property 1”两次。 据我所知,由于我没有在 for 循环中声明 i ,所以它应该将 i 的新值返回到最初声明的变量。这显然是我遗漏/不理解的范围问题。

提前致谢。

最佳答案

v 不会在循环内重新分配。您多次附加相同的值。

关于javascript - for 循环和变量范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17078310/

相关文章:

c - C语言嵌套for循环

python - 在 KeyError 中使用嵌套 for 循环结果从嵌套字典中检索项目

batch-file - 批量SUBSTRING一个文件名

javascript - 如何等待来自 localStorage 的值?

javascript - 使用HTML5 + javascript进行演示的基本框架

javascript - 结合几个事件

c - Luhn 算法的 for 循环中的未知值

javascript - Ajax加载一个html文件,然后添加一个值

javascript - 避免一遍又一遍地写同一个词

r - 在 R 中矢量化而不是循环