Следующий ответ @rsplak: на самом деле использование пути split / join быстрее, чем использование regexp.См. Производительность контрольный пример
Итак
var result = text.split(' ').join('')
работает быстрее, чем
var result = text.replace(/\s+/g, '')
Для небольших текстов это не имеет значения, но для случаев, когда важно время, например, в текстовых анализаторах, особенно при взаимодействии с пользователями, это важно.
С другой стороны, \s+
обрабатываетболее широкое разнообразие космических персонажей.Среди \n
и \t
он также соответствует символу \u00a0
, и это то, во что превращается
, при получении текста с использованием textDomNode.nodeValue
.
Так что я думаю, что вывод здесьможно сделать следующим образом: если вам нужно только заменить пробелы ' '
, используйте split / join.Если могут быть разные символы класса символов - используйте replace(/\s+/g, '')