@WarriorKodeK

Как укоротить строку?

Всем привет.
Допустим есть строка- Sasha Hershfield
Мне надо сделать - Sasha H.

И это должно работать для любого к-чтва букв.

Пока сделал так, но мне не очень нравится
parseUserName = userName => {
    const splitted = userName.split(" ");
    const firstName = splitted[0];
    const lastName = splitted[splitted.length - 1][0];
    return `${firstName} ${lastName}.`;
  };
  • Вопрос задан
  • 120 просмотров
Решения вопроса 2
hzzzzl
@hzzzzl
да нормально всё, читаемо и понятно что происходит
так "короче", но лучше ли

const parseUserName = userName => userName.replace(/ (.*)$/, match => match.substr(0, 2) + '.')


а если охота сократить, то лучше так без регекспов
parseUserName = userName => {
  const [first, last] = userName.split(' ')
  return `${first} ${last[0]}.`
}
Ответ написан
lastuniverse
@lastuniverse
Всегда вокруг да около IT тем
Можно как то так сделать:
parseUserName = userName => {
    const splitted = userName.split(/\s+/);
    return splitted[0]+" "+splitted[1][0]+".";
};


Ответ написан
Пригласить эксперта
Ответы на вопрос 2
@GreatRash
1. Нафига там const везде?
2. Что именно не нравится?
Ответ написан
nd0ut
@nd0ut
const parseUserName = userName => userName.substring(0, userName.indexOf(' ') + 2) + '.'
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы