爲什麼會出現第11次迭代,爲什麼在其中打印'undefined'?爲什麼這個循環產生未定義?
var num = 10;
var start = 0;
function x(){
while (start <= num){
console.log(start + '<br>');
start++;
}
}
console.log(x());
爲什麼會出現第11次迭代,爲什麼在其中打印'undefined'?爲什麼這個循環產生未定義?
var num = 10;
var start = 0;
function x(){
while (start <= num){
console.log(start + '<br>');
start++;
}
}
console.log(x());
由於x()在您使用console.log()時不會返回任何內容。
var num = 10;
var start = 0;
function x(){
while (start <= num){
console.log(start);
start++;
}
}
x();
如果您在函數返回的東西則輸出的回報。
var num = 10;
var start = 0;
function x(){
while (start <= num){
console.log(start);
start++;
}
return 'END';
}
console.log(x());
現在該函數返回 'END'。
如果我們要顯示數字0到9只? *返回開始*顯示最多11,並且*返回num *顯示10兩次。困惑:/ – SummerBoy
由於功能x
不返回任何東西,你console.log
-ing其輸出。
函數x
不返回值 - 因此undefined
部分。由於條件是start <= 10
,所以有11次迭代計數從0到10。
由於x()沒有返回值,並且在0和10之間有11次迭代。如果將start <= num
更改爲start < num
,則只會有10次迭代。另外,不是記錄x(),你可以自己執行它,它將運行代碼並記錄10次迭代。
0 ... 10是11次迭代 –
你說得對......我的意思12 – SummerBoy
沒有一個12迭代 –