Простым способом может быть использование Regex следующим образом:
let message = "Learning is fun!";
let onlyLettersArray = message.split('').filter(char => /[a-zA-Z]/.test(char));
console.log(onlyLettersArray)
.filter принимает массив и запускает функцию для элементов, которая возвращает истину или ложь. Элемент удаляется, если возвращается false. Регулярное выражение проверяет, находится ли символ в диапазоне az или AZ
Другой способ - отфильтровать символ и затем разделить его следующим образом:
let message = "Learning is fun!";
let onlyLettersArray = message.replace(/[^a-z]+/gi, '').split('');
console.log(onlyLettersArray)
Редактировать:
var myMessage = "Learning is fun!";
var arr1 = myMessage.split("");
function onlyLetters(array){
let arr2 = []
for(let i = 0; i < array.length; i++){
if(/[a-z]/.test(array[i])){ // you can use regex instead of all characters
arr2.push(array[i])
}
}
return arr2
}
console.log(onlyLetters(myMessage))
Обновление: Если вместо массива символов вам нужно заменить специальные символы в строке, вы можете написать
let message = "Learning is fun!";
let letterMessage = message.replace(/[^a-zA-Z]/gm,"")
console.log(letterMessage)