Как удалить последний символ из строки, используя jQuery?


181

Как удалить последний символ из строки, например, 123-4-когда я удаляю 4его, должен отображаться 123-с помощью jQuery .


30
Вы удаляете последние два символа.
Skilldrick

Ответы:


459

Вы также можете попробовать это в простом JavaScript

"1234".slice(0,-1)

второй отрицательный параметр - это смещение от последнего символа, поэтому вы можете использовать -2 для удаления последних 2 символов и т. д.


15
в настоящее время мы (по крайней мере, я) используем так много jQuery, иногда я забываю, как это сделать простым javascript = X
Мишель Айрес

2
Чтобы прояснить ситуацию (поскольку этот пост может быть полезен в основном для начинающих): .slice () вернет результат. Поэтому нужно использовать: var result = "1234" .slice (0, -1);
MMB

38

Зачем для этого использовать jQuery?

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

Конечно, если вы должны:

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

2
@GolezTrol: str.count () не является функцией. str.length возвращает число символов в строке
skajfes

@ skajfes Кстати, это лучший пример, который я отредактирую выше, чтобы использовать длину
Джейсон Бенсон

Хороший пример с JQuery. Спасибо за публикацию Джейсона. Best
OV Web Solutions

9

@skajfes и @GolezTrol предоставили лучшие методы для использования. Лично я предпочитаю использовать "slice ()". Это меньше кода, и вам не нужно знать, какова длина строки. Просто используйте:

//-----------------------------------------
// @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));

Я предпочитаю подстроку себя. Срез для меня слишком близок к срезу массива
Джейсон Бенсон

5

Вы можете сделать это с простым JavaScript:

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

Это возвращает первые четыре символа вашей строки (отрегулируйте 4в соответствии с вашими потребностями).


3
Решение среза (0, -1) лучше, потому что вам не нужно заранее знать длину строки.
Дан Даскалеску
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.