Как разбить строку и процесс, разделенные запятыми, в цикле с использованием JavaScript?
Как разбить строку и процесс, разделенные запятыми, в цикле с использованием JavaScript
Ответ 1
Мои два цента, добавив триммер, чтобы удалить начальные пробелы, оставшиеся в ответе sAc.
var str = 'Hello, World, etc';
var str_array = str.split(',');
for(var i = 0; i < str_array.length; i++) {
// Trim the excess whitespace.
str_array[i] = str_array[i].replace(/^\s*/, "").replace(/\s*$/, "");
// Add additional code here, such as:
alert(str_array[i]);
}
Изменить:
После получения нескольких ответов на этот ответ я хотел вернуться к этому. Если вы хотите разделить запятую и выполнить операцию обрезки, вы можете сделать это одним вызовом метода без каких-либо явных циклов из-за того, что split
также примет регулярное выражение в качестве аргумента:
'Hello, cruel , world!'.split(/\s*,\s*/);
//-> ["Hello", "cruel", "world!"]
Это решение, однако, не будет обрезать начало первого элемента и конец последнего элемента, который обычно не является проблемой.
И чтобы ответить на вопрос в отношении процесса в цикле, если ваши целевые браузеры поддерживают дополнительные массивы ES5, такие как методы map
или forEach
, тогда вы можете просто сделать следующее:
myStringWithCommas.split(/\s*,\s*/).forEach(function(myString) {
console.log(myString);
});
Ответ 2
Вот так:
var str = 'Hello, World, etc';
var myarray = str.split(',');
for(var i = 0; i < myarray.length; i++)
{
console.log(myarray[i]);
}
Ответ 3
Попробуйте следующий фрагмент:
var mystring = 'this,is,an,example';
var splits = mystring.split(",");
alert(splits[0]); // output: this