簡體   English   中英

JavaScript中循環的最后一次迭代

[英]Last iteration of a loop in JavaScript

我想做這樣的事情:

for (var i=1; i<=10; i++) {
   document.write(i + ",");
}

結果顯示如下:

1,2,3,4,5,6,7,8,9,10,

但我要刪除最后一個“,”,結果應如下所示:

1,2,3,4,5,6,7,8,9,10

您應該使用.join代替:

var txt = [];                          //create an empty array
for (var i = 1; i <= 10; i++) {
    txt.push(i);                       //push values into array
}

console.log(txt.join(","));            //join all the value with ","

您可能只在生成時進行測試:

for (var i=1; i<=10; i++) {
   document.write(i);
   if (i<9)  document.write(',');
}

請注意,當您從數組開始時(這可能是您提出的問題背后的真正問題),有一個便捷的join函數:

var arr = [1, 2, 3];
document.write(arr.join(',')); // writes "1,2,3"

您應該檢查是否已經到達循環的結尾(i == 10):

for (var i=1; i<=10; i++) {
    document.write(i + (i==10 ? '': ','));
}

這是一個小提琴:

小提琴

嘗試這個-

str="";
for (var i=1; i<=10; i++) {
   str=str+i + ",";
}
str.substr(0,str.length-1);
document.write(str);

試試吧。

 var arr = new Array();
 for (i=1; i<=10; i++) {
    arr.push(i);
 }
 var output = arr.join(',');
 document.write(output);
for (var i=1; i<=10; i++) {
    if (i == 10) {
        document.write(i);
    }
    else {
        document.write(i + ",");
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM