A continuación se muestra una función para unir palabras. Dado que la primera o la última palabra podría ser una cadena como 7 1/2, ¿cómo me aseguraría de eso? si la palabra contiene una fracción, formatee la fracción con etiquetas (superíndice)... ¿para que se muestre bien como a continuación?
export const joinWords = (words: string[]): string => { if (words.length === 1) { return words[0]; } const firstWords = words.slice(0, words.length - 1); const lastWord = words[words.length - 1]; const oxfordComma = words.length > 2; //if firstWords or lastword contains "/"...Logic??? return firstWords.join(', ') + `${oxfordComma ? ', ' : ''} and ${lastWord}`; };
Encontré una forma alternativa, donde uso el método de reemplazo. Estoy usando svelte por lo tanto el onmount ..
onMount(() => { //join the words const test = joinWords(optionNames); //replace the "1/2" since I am only using 1/2 for clothing sizes...this may not work for other fractions.. const newTest = test.replace('1/2', '½'); testWord = newTest; });
//be sure to return as html...again im in svelte. <span>{@html testWord} </span><br />