¿Cómo eliminar el último carácter de una cadena usando jQuery?


181

Cómo eliminar el último carácter de una cadena, por ejemplo, 123-4-cuando lo elimino 4, debería aparecer 123-usando jQuery .


30
Estás borrando los dos últimos caracteres entonces.
— Skilldrick

Respuestas:


459

También puedes probar esto en JavaScript simple

"1234".slice(0,-1)

el segundo parámetro negativo es un desplazamiento del último carácter, por lo que puede usar -2 para eliminar los últimos 2 caracteres, etc.


15
estamos (al menos estoy) usando tanto jQuery hoy en día, a veces se me olvida cómo hacerlo en javascript simple = X
— Michel Ayres

2
Para aclarar las cosas (ya que esta publicación puede ser útil principalmente para principiantes): .slice () devolverá el resultado. Entonces uno debería usar: var result = "1234" .slice (0, -1);
— MMB

38

¿Por qué usar jQuery para esto?

str = "123-4"; 
alert(str.substring(0,str.length - 1));

Por supuesto si debes:

Substr w / jQuery:

//example test element
 $(document.createElement('div'))
    .addClass('test')
    .text('123-4')
    .appendTo('body');

//using substring with the jQuery function html
alert($('.test').html().substring(0,$('.test').html().length - 1));

str.substring (0, str.count () - 1)
— GolezTrol el

2
@GolezTrol: str.count () no es una función. str.length devuelve el número de caracteres en la cadena
— skajfes

@ skajfes Por cierto, este es un mejor ejemplo. Editaré el mío arriba para usar la longitud
— Jason Benson el

Buen ejemplo con jQuery. Gracias por publicar Jason. Lo mejor
— OV Web Solutions

9

@skajfes y @GolezTrol proporcionaron los mejores métodos para usar. Personalmente, prefiero usar "slice ()". Es menos código, y no tienes que saber cuánto dura una cadena. Solo usa:

//-----------------------------------------
// @param begin  Required. The index where 
//               to begin the extraction. 
//               1st character is at index 0
//
// @param end    Optional. Where to end the
//               extraction. If omitted, 
//               slice() selects all 
//               characters from the begin 
//               position to the end of 
//               the string.
var str = '123-4';
alert(str.slice(0, -1));

Prefiero substring yo mismo. Slice para mí es demasiado cerca de gama rebanada
— Jason Benson

5

Puedes hacerlo con JavaScript simple:

alert('123-4-'.substr(0, 4)); // outputs "123-"

Esto devuelve los primeros cuatro caracteres de su cadena (ajústelos 4según sus necesidades).


3
La solución de corte (0, -1) es mejor porque no necesita conocer la longitud de la cadena de antemano.
— Dan Dascalescu
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.