วิธีการลบอักขระตัวสุดท้ายออกจากสตริงโดยใช้ jQuery


181

วิธีการลบอักขระตัวสุดท้ายจากสตริงเช่น 123-4-เมื่อฉันลบ4มันควรจะแสดง123-โดยใช้jQuery


30
คุณกำลังลบอักขระสองตัวสุดท้ายแล้ว
Skilldrick

คำตอบ:


459

คุณสามารถลองใช้จาวาสคริปต์ธรรมดาได้

"1234".slice(0,-1)

พารามิเตอร์ตัวที่สองที่เป็นลบนั้นเป็นออฟเซ็ตจากอักขระตัวสุดท้ายดังนั้นคุณสามารถใช้ -2 เพื่อลบอักขระ 2 ตัวสุดท้ายเป็นต้น


15
พวกเรา (อย่างน้อยฉัน) ใช้ jQuery มากทุกวันนี้บางครั้งฉันลืมวิธีทำใน javascript ธรรมดา = X
Michel Ayres

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 BTW นี้เป็นตัวอย่างที่ดีกว่าฉันจะแก้ไขเหมืองดังกล่าวข้างต้นที่จะใช้ความยาว
เจสันเบนสัน

ตัวอย่างที่ดีกับ jQuery ขอบคุณสำหรับการโพสต์เจสัน ดีที่สุด
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));

ฉันชอบสตริงย่อยตัวเอง Slice สำหรับฉันอยู่ใกล้เกินไปกับ array slice
Jason Benson

5

คุณสามารถทำได้ด้วย JavaScript ธรรมดา:

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

ส่งคืนอักขระสี่ตัวแรกของสตริงของคุณ (ปรับ4ให้เหมาะกับความต้องการของคุณ)


3
โซลูชัน slice (0, -1) ดีกว่าเพราะคุณไม่จำเป็นต้องทราบความยาวของสตริงล่วงหน้า
Dan Dascalescu
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.