En este post te mostraré una función en JavaScript para agregar un carácter cada determinado número de caracteres.
Por ejemplo, agregar un guión cada 4 dígitos o cada 6 dígitos, es decir, rellenar la cadena agregando algo en el centro.
Debemos recorrer la cadena e ir cortándola (con substring
) en porciones del paso, una vez que está cortada le agregamos el carácter.
Por ejemplo, si queremos agregar un guión cada 4 caracteres entonces extraemos pedazos de 4 caracteres en la cadena y al final agregamos el relleno.
Si la longitud de la cadena no es exacta, no importa, pues comprobamos si al cortar no iremos más allá de la longitud.
Ahora veamos la función:
const agregarCaracter = (cadena, caracter, pasos) => {
let cadenaConCaracteres = "";
const longitudCadena = cadena.length;
for (let i = 0; i < longitudCadena; i += pasos) {
if (i + pasos < longitudCadena) {
cadenaConCaracteres += cadena.substring(i, i + pasos) + caracter;
} else {
cadenaConCaracteres += cadena.substring(i, longitudCadena);
}
}
return cadenaConCaracteres;
}
Tenemos una función que recibe, en orden, la cadena a la que se le agregará el carácter, el carácter que se agrega y finalmente cada cuánto colocar ese carácter.
Por ejemplo, si tenemos algo como AF00AFEE
y queremos poner guiones cada 2 letras, podemos hacer lo siguiente:
let clave = "AF00AFEE";
console.log(agregarCaracter(clave, "-", 2));
// => AF-00-AF-EE
De este modo podemos agregar cualquier carácter de relleno cada N caracteres dentro de una cadena en JavaScript.
El día de hoy vamos a ver cómo restablecer la impresora térmica GOOJPRT PT-210 a…
Hoy voy a enseñarte cómo imprimir en una impresora térmica conectada por USB a una…
En este post voy a enseñarte a programar un servidor web en Android asegurándonos de…
En este post te quiero compartir un código de C++ para listar y cancelar trabajos…
Gracias a WebAssembly podemos ejecutar código de otros lenguajes de programación desde el navegador web…
Revisando y buscando maneras de imprimir un PDF desde la línea de comandos me encontré…
Esta web usa cookies.