JavaScript:Eliminar el primer/último carácter de una cadena [Ejemplos]

Este tutorial explicará algunas formas de eliminar el primer o el último carácter (¡o ambos!) de una cadena en el lenguaje de programación JavaScript.

Esto puede ser útil si necesita escribir nombres u oraciones en mayúsculas o eliminar la puntuación.

Eliminar el primer/último carácter usando la subcadena() Método

JavaScript subcadena() El método se puede utilizar para eliminar el primer o el último carácter de una cadena.

Puede obtener más información sobre substring() y similares substr() métodos aquí.

El siguiente código de ejemplo muestra cómo eliminar el primero, el último y el primero y el último carácter de una cadena.

var myString = "Hello LinuxScrew!"; // Define a string
var removeFirstLetter = myString.substring(1); // Will return "ello LinuxScrew!"
var removeLastLetter = myString.substring(0, myString.length -1); // Will return "Hello LinuxScrew"
var removeFirstAndLastLetter = myString.substring(1, myString.length -1); // Will return "ello LinuxScrew"

¿Qué sucede si la cadena tiene solo 1 carácter de longitud?

Usando subcadena() tiene un inconveniente:no funciona bien con cadenas de un solo carácter. Si no está seguro de la longitud de la cadena que procesará o si sabe que podría tomar un valor de un solo carácter, se recomienda utilizar slice() método descrito más adelante en este tutorial.

var myString = "H"; // Define a string
var removeFirstLetter = myString.substring(1); // Will return ""
var removeLastLetter = myString.substring(0, myString.length -1); //  Will return ""
var removeFirstAndLastLetter = myString.substring(1, myString.length -1); // Will return "H" - which is wrong!

¿Por qué este método no funciona cuando solo hay un carácter presente? Tiene que ver con cómo substring() obras. subcadena() utiliza el índice de los caracteres de la cadena para determinar qué se conserva y qué se descarta.

¿Qué pasa con una cadena vacía?

La subcadena() método  comportarse correctamente cuando se trata de cadenas vacías:devuelve la cadena vacía esperada al intentar eliminar el primer/último carácter:

var myString = ""; // Define a string
var removeFirstLetter = myString.substring(1); // Will return ""
var removeLastLetter = myString.substring(0, myString.length -1); //  Will return ""
var removeFirstAndLastLetter = myString.substring(1, myString.length -1); // Will return ""

Eliminar el primer/último carácter con slice() Método

Si no está seguro de qué longitud tendrá la cadena en la que desea trabajar, es más seguro usar slice() método:

var myString = "Hello LinuxScrew!"; // Define a string
var removeFirstLetter = myString.slice(1, myString.length); // Will return "ello LinuxScrew!"
var removeLastLetter = myString.slice(0, s.length -1); // Will return "Hello LinuxScrew"
var removeFirstAndLastLetter = myString.slice(1,myString.length).slice(0, myString.length - 2); // Will return "ello LinuxScrew"

Observe en la última línea que la segunda llamada a slice() tiene una posición final de myString.length – 2 – porque se eliminan dos caracteres en dos operaciones de división separadas.

Usando segmento() funcionará independientemente de la longitud de la cadena.