คัดลอกรหัสรหัสดังต่อไปนี้:
<html>
<หัว>
<title>sort() วิธีการอาร์เรย์</title>
<สคริปต์>
-
เรียงลำดับ()
1. ไม่มีการสร้างสำเนา อาร์เรย์ต้นฉบับจะถูกอ้างอิงโดยตรง
2. ถ้าไม่มีการใช้พารามิเตอร์เมื่อเรียกใช้เมธอดนี้ องค์ประกอบในอาร์เรย์จะถูกจัดเรียงตามตัวอักษร
เพื่อให้ชัดเจนยิ่งขึ้น ระบบจะจัดเรียงตามลำดับการเข้ารหัสอักขระ
เพื่อให้บรรลุเป้าหมายนี้ องค์ประกอบของอาร์เรย์ควรถูกแปลงเป็นสตริงก่อน (หากจำเป็น) เพื่อการเปรียบเทียบ
3. หากคุณต้องการเรียงลำดับตามเกณฑ์อื่น คุณต้องมีฟังก์ชันการเปรียบเทียบ ซึ่งจะเปรียบเทียบสองค่า
จากนั้นจะส่งกลับตัวเลขที่อธิบายลำดับสัมพันธ์ของค่าทั้งสอง
ฟังก์ชันการเปรียบเทียบควรมีพารามิเตอร์สองตัว a และ b และค่าที่ส่งคืนจะเป็นดังนี้:
ถ้า a น้อยกว่า b ควรปรากฏก่อน b ในอาร์เรย์ที่เรียงลำดับ จากนั้นจะส่งคืนค่าที่น้อยกว่า 0
ถ้า a เท่ากับ b แล้วจะส่งกลับ 0
ถ้า a มากกว่า b จะส่งกลับค่าที่มากกว่า 0
-
วาร์ อาร์ = [2,4,8,1,22,3];
var arrSort= arr.sort();//จัดเรียงไม่ถูก ต้องแปลงอาร์เรย์เป็นสตริงก่อนแล้วจึงเรียงลำดับ
document.write("อาร์เรย์ที่เรียงลำดับเริ่มต้นคือ: " + arrSort);//1,2,22,3,4,8
document.write("<br/>");
//ฟังก์ชันการเปรียบเทียบ
ฟังก์ชั่น mysort(a,b){
กลับ AB;
-
var arrSort2 = arr.sort(mysort);//ผ่านในฟังก์ชันการเปรียบเทียบ
document.write("อาร์เรย์ของพารามิเตอร์การเปรียบเทียบที่ส่งเข้ามาคือ: " + arrSort2);//การเรียงลำดับที่ถูกต้อง
document.write("<br/>");
document.write("อาร์เรย์เดิมคือ: " + arr);
</สคริปต์>
</หัว>
<ร่างกาย>
<div id="เวลา"></div>
</ร่างกาย>
</html>