Ответ 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);
});