return str.replace(/\w\S*/g, function(txt){return txt.charAt(0).toUpperCase() + txt.substr(1).toLowerCase();}).replace(/\s/, '');
Я просто хочу запретить пробелы в начале строки (они могут быть в подстроке)
Есть trim, как упоминал Дани, но это удаляет пробелы с обоих концов строки. Если это должно быть только началом строки, вы можете сделать это:
trim
' foo bar'.replace(/^\s+/, ''); // 'foo bar'
Чтобы удалить пробелы в начале строки в JavaScript
str.replace(/^\s+/, '')