WhiteBachelor
@WhiteBachelor
Начинающий веб-программист.

Как передать split() несколько параметров для разделения?

Нужно сделать функцию, переводящую полученную строку в camel-case. То есть, чтобы из "bg-color" получалось "bgColor". Я сделал вот так:
function toCamelCase(str){
  return str.split(' ' || '-' || '_').reduce((sum, cur) =>
  {return sum + cur.charAt(0).toUpperCase + cur.substr(1)})
}

Данная функция работает только если слова разделены пробелами. Я и с && проверял: тоже не работает. Как можно сделать так. чтобы split() разделял по всем необходимым параметрам?
  • Вопрос задан
  • 1085 просмотров
Решения вопроса 2
AlexKeller
@AlexKeller
str.split(/[ _-]/g);
Параметр separator может быть как строкой, так и регулярным выражением

Плюс нужно скобки добавить для вызова toUpperCase()
Ответ написан
Комментировать
Vlad_IT
@Vlad_IT Куратор тега JavaScript
Front-end разработчик
Используйте регулярку
function toCamelCase(str){
  return str.split(/[- _]/).reduce((sum, cur) =>
  {return sum + cur.charAt(0).toUpperCase() + cur.substr(1)})
}

UPD: только у вас ошибка в функции reduce. Вы не вызываете метод toUpperCase. В моем коде я внес фикс.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы