JS新手:为什么for循环中的这个函数只调用一次?
JS newbie: Why is this function inside a for loop called only once?
我正在学习 JS 并使用 chrome 开发工具控制台来 运行 代码。如果下面的代码在 for 循环内,为什么它只调用一次 randomNumbe()
?
function randomNumber(){
let randomNumber = Math.random() * 10;
return randomNumber;
}
for(let i=0; i<25; i++){
randomNumber();
}
现在,如果我更改代码调用 console.log()
中的函数,它确实会调用函数 25 次:
function randomNumber(){
let randomNumber = Math.random() * 10;
return randomNumber;
}
for(let i=0; i<25; i++){
console.log(randomNumber());
}
除非您在代码中显式添加 console.log()
语句,否则控制台仅显示代码在完成 运行 时计算的最终值。因此,您只会在控制台中看到一个预期的最终值。如果您在循环内的任意位置添加 console.log()
语句,您将获得循环的每次迭代的输出。
因此,您的函数在循环的所有 25 次迭代中都被调用,您只是没有看到它的任何输出,因为它没有生成任何特定的输出。
例如:
function randomNumber(){
let randomNumber = Math.random() * 10;
return randomNumber;
}
for(let i=0; i<25; i++){
let x = randomNumber();
console.log(x); // make some visible output in the loop
}
我正在学习 JS 并使用 chrome 开发工具控制台来 运行 代码。如果下面的代码在 for 循环内,为什么它只调用一次 randomNumbe()
?
function randomNumber(){
let randomNumber = Math.random() * 10;
return randomNumber;
}
for(let i=0; i<25; i++){
randomNumber();
}
现在,如果我更改代码调用 console.log()
中的函数,它确实会调用函数 25 次:
function randomNumber(){
let randomNumber = Math.random() * 10;
return randomNumber;
}
for(let i=0; i<25; i++){
console.log(randomNumber());
}
除非您在代码中显式添加 console.log()
语句,否则控制台仅显示代码在完成 运行 时计算的最终值。因此,您只会在控制台中看到一个预期的最终值。如果您在循环内的任意位置添加 console.log()
语句,您将获得循环的每次迭代的输出。
因此,您的函数在循环的所有 25 次迭代中都被调用,您只是没有看到它的任何输出,因为它没有生成任何特定的输出。
例如:
function randomNumber(){
let randomNumber = Math.random() * 10;
return randomNumber;
}
for(let i=0; i<25; i++){
let x = randomNumber();
console.log(x); // make some visible output in the loop
}