我想要一些我的for循环在函数范围内使用的变量(非全局)。
我试图将for循环包装在像这样的函数中,但它会导致控制台错误:
function() {
var data = livingroomTableData;
for(var i = data[0]; i < data[1]; i++) {
var elemvalue = data[2] + format(i) + ".png";
livingroomTableArray[i] = elemvalue;
}
}
我希望数据变量只在这个for循环(不是全局)中包含livingroomTableData的值。在其他循环中,我将在数据变量中输入一个不同的变量。
哦,是的,正如你可能会说的那样,我是一个全新的人。 :S
答案 0 :(得分:1)
javascript中只有函数作用域,块作用域不存在,所以你不能让变量只在for循环中。你可以做的是创建一个功能范围。
代码示例:
(function(livingroomTableData) {
var data = livingroomTableData;
//... the rest code
})(livingroomTableData);
答案 1 :(得分:1)
big 问题就在这一行:
for(var i = data[0]; i < data[1]; i++) {
这意味着,从i
作为数组的第一个元素开始,在循环中执行代码,在每次运行结束时将i
递增1,直到i
不是小于data
的第二个元素。
我会重写它以向您展示工作版本,但不清楚您实际想要做什么。
答案 2 :(得分:0)
function() {
for(var i = 0; i < livingroomTableData.length; i++) {
var data = livingroomTableData[i];
//your code here...
}
}