Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Javascript

การเรียงลำดับสตริงที่มีจุดทศนิยมใน JavaScript


สมมติว่าเรามีอาร์เรย์ของสตริงเช่นนี้ −

const arr =[ '.0', '.1', '.2', '.4', '.2.1', '.3', '.4.1', '.5', '.5.1' .5' ];

เราจำเป็นต้องเขียนฟังก์ชัน JavaScript ที่รับอาร์เรย์ดังกล่าว หน้าที่ของเราควรจัดเรียงอาร์เรย์ในลำดับที่เพิ่มขึ้น (ตามที่คนธรรมดาเห็น)

ซึ่งหมายความว่าสตริงที่มี '.0' ตามด้วย '.1' ตามด้วย '.2' เป็นต้น ดังนั้น หลังจากจัดเรียงแล้ว อาร์เรย์ควรมีลักษณะดังนี้ −

คอนสตเอาท์ =[ '.0', '.1', '.2.1', '.2, '.3', '.4', '.4.1', '.5', '.5.1. 5' ];

ตัวอย่าง

รหัสสำหรับสิ่งนี้จะเป็น −

const arr =[ '.0', '.1', '.2', '.4', '.2.1', '.3', '.4.1', '.5', '.5.1' .5' ];const comparison =(a, b) => { if (a ===b) { return 0 }; const aArr =a.split("."), bArr =b.split("."); สำหรับ (ให้ i =0; i  parseInt (bArr [i])) { กลับ 1 }; } if (aArr.length  bArr.length) { ส่งคืน 1 }; return 0;};arr.sort(compare);console.log(arr);

ผลลัพธ์

และผลลัพธ์ในคอนโซลจะเป็น −

<ก่อนหน้า>[ '.0', '.1', '.2', '.2.1', '.3', '.4', '.4.1', '.5', '.5.1.5' ]