Comment puis-je convertir une chaîne comme 'helloThere' ou 'HelloThere' en 'Hello There' en JavaScript ?
Réponses
Trop de publicités?
Manas
Points
61
PJRobot
Points
31
Programmeur C sous couverture. Si, comme moi, vous voulez préserver les acronymes et ne voulez pas regarder les modèles cryptiques, alors peut-être que vous aimerez ceci :
function isUpperCase (str) {
return str === str.toUpperCase()
}
export function camelCaseToTitle (str) {
for (let i = str.length - 1; i > 0; i--) {
if (!isUpperCase(str[i - 1]) && isUpperCase(str[i])) {
str = str.slice(0, i) + ' ' + str.slice(i)
}
}
return str.charAt(0).toUpperCase() + str.slice(1)
}
user169251
Points
39
Ajout d'une autre solution ES6 que je préférais après avoir été insatisfait de quelques idées ci-dessus.
https://codepen.io/902Labs/pen/mxdxRv?editors=0010#0
const camelize = (str) => str
.split(' ')
.map(([first, ...theRest]) => (
`${first.toUpperCase()}${theRest.join('').toLowerCase()}`)
)
.join(' ');
- Réponses précédentes
- Plus de réponses