Чистый код Короткие заметки веб-разработчика

Как заменить все определённые символы в строке на другие в JavaScript

Реализация очень простая и понятная любому. К сожалению, в JavaScript нет ещё более простого метода, которые бы мог сразу найти все совпадения в строке и заменить их, за то .replace() работает с регулярными выражениями.

Собственно, если у нас есть строка, в которой мы хотим заменить все минусы. Например, номер телефона: 798-888-88-88, который нам нужно привести к виду 7988888888.

Код для такого манёвра будет выглядеть вот так:

const phone = "798-888-88-88";
phone.replace(new RegExp('-', 'g'), '');

console.log(phone); //7988888888

Здесь мы вызываем стандартный метод строки .replace(). Аргументами метода мы указываем регулярное выражение, которое ищет все минусы. Флаг g (global) как раз указывает на то, что регулярное выражение не остановится на моменте первого вхождения и продолжит искать вхождения на всей строке.

Если же с регулярными выражениями у вас попроще, чем у меня, то можно использовать банальное

const phone = "798-888-88-88";
phone.replace(/-/g, '');