590 votos

Javascript chop / slice / 'recortar' último carácter de la cadena

Tengo una cadena 12345.00 le gustaría regresar 12345.0

He mirado en el ajuste pero parece sólo para recortar espacios en blanco y la rebanada que no veo cómo podría funcionar esto. ¿Alguna sugerencia?

933voto

Jon Erickson Puntos 29643

Puede utilizar la subcadena función:

 var str = "12345.00";
str = str.substring(0, str.length - 1);
 

863voto

Jason S Puntos 58434

Puede usar rebanada! Sólo tienes que asegurarse de que sabe cómo usarlo. #s Positivos son en relación con el inicio, los números negativos son en relación con el final.

 "12345.00".slice(0, -1); //-> "12345.0"
 

221voto

Alex Martelli Puntos 330805

Puede utilizar la subcadena método de objetos de cadena de Javascript:

 s = s.substring(0, s.length - 4)
 

incondicionalmente elimina los 4 últimos caracteres de string s .

Sin embargo, si desea eliminar condicionalmente los últimos 4 caracteres, sólo si son exactamente _bar :

 var re = /_bar$/;
s.replace(re, "");
 

125voto

Tim Down Puntos 124501

El método más fácil es utilizar el slice método de la cadena, que permite posiciones negativas (correspondiente a compensaciones de la final de la cadena):

 var s = "your string";
var withoutLastFourChars = s.slice(0, -4);
 

Si necesitas algo más general para eliminar todo después de (e incluyendo) el último guión, se puede hacer lo siguiente (siempre que s está garantizado para contener al menos un guión bajo):

 var s = "your_string";
var withoutLastChunk = s.slice(0, s.lastIndexOf("_"));
// withoutLastChunk == "your"
 

50voto

Paolo Bergantino Puntos 199336

Para un número como su ejemplo, yo recomiendo hacer esto en substring :

 alert(parseFloat('12345.00').toFixed(1)); // 12345.0
 

Ten en cuenta que esto va a la vuelta de la serie, sin embargo, que me imagino que se desea, pero tal vez no:

 alert(parseFloat('12345.46').toFixed(1)); // 12345.5
 

Iteramos.com

Iteramos es una comunidad de desarrolladores que busca expandir el conocimiento de la programación mas allá del inglés.
Tenemos una gran cantidad de contenido, y también puedes hacer tus propias preguntas o resolver las de los demás.

Powered by: