Làm cách nào để xóa ký tự cuối cùng khỏi chuỗi bằng jQuery?


181

Ví dụ, làm thế nào để xóa ký tự cuối cùng khỏi chuỗi 123-4-khi tôi xóa 4nó sẽ hiển thị 123-bằng jQuery .


30
Bạn đang xóa hai ký tự cuối cùng.
Skilldrick

Câu trả lời:


459

Bạn cũng có thể thử điều này trong javascript đơn giản

"1234".slice(0,-1)

tham số thứ hai âm là phần bù từ ký tự cuối cùng, vì vậy bạn có thể sử dụng -2 để xóa 2 ký tự cuối, v.v.


15
hiện tại chúng tôi (ít nhất là tôi) đang sử dụng rất nhiều jQuery, đôi khi tôi quên cách làm trong javascript = X
Michel Ayres

2
Để làm rõ mọi thứ (vì bài đăng này có thể hữu ích chủ yếu cho người mới bắt đầu): .slice () sẽ trả về kết quả. Vì vậy, người ta nên sử dụng: var result = "1234" .slice (0, -1);
MMB

38

Tại sao sử dụng jQuery cho việc này?

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

Tất nhiên nếu bạn phải:

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.sub chuỗi (0, str.count () - 1)
GolezTrol

2
@GolezTrol: str.count () không phải là hàm. str.length trả về số ký tự trong chuỗi
skajfes

@ skajfes BTW đây là một ví dụ tốt hơn Tôi sẽ chỉnh sửa phần trên của tôi để sử dụng chiều dài
Jason Benson

Ví dụ tốt với jQuery. Cảm ơn đã đăng Jason. Tốt nhất
Giải pháp web của OV

9

@skajfes và @GolezTrol đã cung cấp các phương pháp tốt nhất để sử dụng. Cá nhân, tôi thích sử dụng "lát ()". Đó là ít mã hơn và bạn không cần phải biết một chuỗi dài bao nhiêu. Chỉ dùng:

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

Tôi thích chuỗi con mình hơn. Slice đối với tôi quá gần với mảng lát
Jason Benson

5

Bạn có thể làm điều đó với JavaScript đơn giản:

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

Điều này trả về bốn ký tự đầu tiên của chuỗi của bạn (điều chỉnh 4cho phù hợp với nhu cầu của bạn).


3
Giải pháp lát (0, -1) tốt hơn vì bạn không cần biết trước độ dài chuỗi.
Dan Dascalescu
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.