J'essayais de convertir une seule chaîne avec des hashtags à une chaîne séparée par des virgules.
Comment supprimer le démarrage des virgules Voici ce que j'ai essayé jusqu'à présent. P> p> , code> dans le résultat. Quelqu'un pourrait-il s'il vous plaît aider?
const tags = '#chat #application #blog #guide #create #ionic #gon'
console.log(
tags
.split('#')
.map(val => val.trim())
.join(',')
);
5 Réponses :
Que diriez-vous de filtrer une collection avant p> tableau # mappe code>?
filtre (Booléen) code> strong>
est équavalent à filtre (val => booléen (val)) code>. Comme
"" " code> est une valeur code> faussey code>, il sera faux donc éliminé de la matrice. P>
blockquote>
const tags = '#chat #application #blog #guide #create #ionic #gon'
console.log(
tags
.split('#')
.filter(Boolean)
.map(val => val.trim())
.join(',')
);
Juste curieux, comment a-t-il sorti l'élément vide dans ce cas en utilisant filtre code>?
@Pavan filtre (booléen) est identique au filtre (fonction (x) {retour booléen (x);}). La chaîne vide est une valeur fausse en JavaScript afin de filtrer la chaîne vide.
@Pavan - filtre (booléen) code> est équivalent au filtre
(val => booléen (val)) code>. Comme
"" code> est une valeur de fausseté, il sera faux donc éliminé de la matrice.
Cela explique. Appréciez-le.
Vous pouvez supprimer le premier élément de divisé code> par
SLICE (1) code>
const tags = '#chat #application #blog #guide #create #ionic #gon'
console.log(
tags
.split('#').slice(1).map(val => val.trim())
.join(',')
);
Vous pouvez ajouter un .Filter () pour supprimer les espaces vides après le fichier .split ()
p>
const tags = '#chat #application #blog #guide #create #ionic #gon' console.log( tags .split("#") .filter(val => val) .map(val => val.trim()) .join(", ") );
Vous pouvez filtrer une chaîne vide pour qu'il n'y ait pas de ',' pour la première chaîne vide.
console.log( tags .split('#') .filter((val) => val != '') .map(val => val.trim()) .join(',') );