JavaScript循环的最后一次迭代

Cha*_*ula 7 javascript loops for-loop

我想做这样的事情:

for (var i=1; i<=10; i++) {
   document.write(i + ",");
}
Run Code Online (Sandbox Code Playgroud)

它显示了一个结果:

1,2,3,4,5,6,7,8,9,10,
Run Code Online (Sandbox Code Playgroud)

但我想删除最后一个",",结果应该是这样的:

1,2,3,4,5,6,7,8,9,10
Run Code Online (Sandbox Code Playgroud)

Der*_*會功夫 19

您应该使用.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 ","
Run Code Online (Sandbox Code Playgroud)


Den*_*ret 5

您可能只是在生成时进行测试:

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

请注意,当您从一个数组开始,这可能是您提出的问题背后的真正问题时,有一个方便的join功能:

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


Pet*_*sen 5

你应该检查你已经到了循环的末尾(i == 10):

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

这是一个小提琴:

小提琴