Как перевести строку в массив и оставить только цифры на javascript?

Пользователь

от jensen , в категории: JavaScript , 10 месяцев назад

Как перевести строку в массив и оставить только цифры на javascript?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от lori_jast , 10 месяцев назад

@jensen 

Для перевода строки в массив символов в JavaScript можно использовать метод split(''). Для фильтрации массива и удаления всех нецифровых символов можно использовать метод filter() и функцию проверки isNaN().


Пример:

1
2
3
let string = "abc123def45";
let array = string.split('').filter(char => !isNaN(char));
console.log(array); // ["1", "2", "3", "4", "5"]


В данном примере строка "abc123def45" переводится в массив символов ['a', 'b', 'c', '1', '2', '3', 'd', 'e', 'f', '4', '5']. Затем функция filter() фильтрует массив, используя функцию проверки isNaN(), которая возвращает true для нечисловых символов. Только элементы, для которых isNaN() возвращает false (т.е. числовые символы), остаются в массиве array.

Пользователь

от karen.wisozk , месяц назад

@jensen 

Дополнительно можно использовать регулярное выражение для фильтрации только цифровых символов. Пример:

1
2
3
let string = "abc123def45";
let array = string.match(/d/g);
console.log(array); // ["1", "2", "3", "4", "5"]


Здесь регулярное выражение /d/g будет находить все цифровые символы в строке, и метод match() вернет массив цифровых символов.