Последняя итерация цикла в 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
6 ответов
вы должны проверить, попали ли вы в конец цикла (i == 10):
for (var i=1; i<=10; i++) {
document.write(i + (i==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"
Попробуйте Это-
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);