Javascript 中的嵌套循环问题
Problems with nested loops in Javascript
我正在尝试在 javascript 中做一个嵌套循环,这是我第一次做这种事情,我有很多疑问:(!
我需要获取变量被打印或用于循环的时间,我首先想到的是使用 .length...我认为它有效...但它没有,或者我不知道有没有。
当我使用长度方法时,我在控制台中得到了这个:Console Message
这是我需要的值,但我不知道我是否可以使用它,我什至不知道该值的名称,它看起来像 "undefined" :(!
而且我不能在循环外的变量上使用 console.log 因为它 returns 只是它的最后一个值,而不是具体打印的次数.
如果你还有更多的疑惑,可以看看我的代码,也许能解开大家的疑惑。
function calculatingDays(day, month, year, current_day, current_month, current_year, final_day, callback){
for (k = year; k <= (year + 1); k++){
for (i = current_month; i <= 12; i++){
for (j = current_day; j <= final_day; j++) {
console.log(j.length)
if (j === day && i === month) {break}
}
final_day = new Date(year, i, 0);
final_day = final_day.getDate();
current_day = 1;
if (j === day && i === month) {break}
}
if (j === day && i === month) {break}
}
}
}
你需要的是可以记录某事发生次数的东西。这最好通过一个可以递增的变量来完成。这看起来像什么?
var counter = 0;
// later on when you find you need to increment the counter
counter = counter + 1;
然后在你完成循环后你可以做 console.log(counter)
。在您的代码中,您希望 var counter = 0
出现在第一个 for
循环的正上方。您当前正在做的 console.log(j.length)
就是您增加计数器的地方。然后在要打印的循环之外选择一个点。你有几个循环,我不确定你想什么时候打印计数器。
我正在尝试在 javascript 中做一个嵌套循环,这是我第一次做这种事情,我有很多疑问:(!
我需要获取变量被打印或用于循环的时间,我首先想到的是使用 .length...我认为它有效...但它没有,或者我不知道有没有。
当我使用长度方法时,我在控制台中得到了这个:Console Message
这是我需要的值,但我不知道我是否可以使用它,我什至不知道该值的名称,它看起来像 "undefined" :(!
而且我不能在循环外的变量上使用 console.log 因为它 returns 只是它的最后一个值,而不是具体打印的次数.
如果你还有更多的疑惑,可以看看我的代码,也许能解开大家的疑惑。
function calculatingDays(day, month, year, current_day, current_month, current_year, final_day, callback){
for (k = year; k <= (year + 1); k++){
for (i = current_month; i <= 12; i++){
for (j = current_day; j <= final_day; j++) {
console.log(j.length)
if (j === day && i === month) {break}
}
final_day = new Date(year, i, 0);
final_day = final_day.getDate();
current_day = 1;
if (j === day && i === month) {break}
}
if (j === day && i === month) {break}
}
}
}
你需要的是可以记录某事发生次数的东西。这最好通过一个可以递增的变量来完成。这看起来像什么?
var counter = 0;
// later on when you find you need to increment the counter
counter = counter + 1;
然后在你完成循环后你可以做 console.log(counter)
。在您的代码中,您希望 var counter = 0
出现在第一个 for
循环的正上方。您当前正在做的 console.log(j.length)
就是您增加计数器的地方。然后在要打印的循环之外选择一个点。你有几个循环,我不确定你想什么时候打印计数器。