Ответ 1
Добавив наш метод .cleanup()
к самому объекту String, вы можете очистить любую строку в Javascript, просто вызвав локальный метод, например:
# Attaching our method to the String Object
String.prototype.cleanup = function() {
return this.toLowerCase().replace(/[^a-zA-Z0-9]+/g, "-");
}
# Using our new .cleanup() method
var clean = "Hello World".cleanup(); // "hello-world"
Поскольку в конце регулярного выражения есть знак плюса, он соответствует одному или нескольким символам. Таким образом, на выходе всегда будет один '-'
для каждой серии из одного или нескольких не-буквенно-цифровых символов:
# An example to demonstrate the effect of the plus sign in the regular expression above
var foo = " Hello World . . . ".cleanup(); // "-hello-world-"
Без знака плюс результат будет "--hello-world--------------"
для последнего примера.