1. ทำความเข้าใจกับอาร์เรย์
อาร์เรย์คือชุดของข้อมูลบางประเภท ประเภทข้อมูลอาจเป็นจำนวนเต็ม สตริง หรือแม้แต่วัตถุก็ได้
Javascript ไม่รองรับอาร์เรย์หลายมิติ แต่เนื่องจากอาร์เรย์สามารถมีวัตถุได้ (อาร์เรย์ก็เป็นวัตถุด้วย) อาร์เรย์จึงสามารถบรรลุฟังก์ชันที่คล้ายกับอาร์เรย์หลายมิติได้โดยการซ้อนกัน
1.1 กำหนดอาร์เรย์
ประกาศอาร์เรย์ที่มี 10 องค์ประกอบ
var a = อาร์เรย์ใหม่ (10);
ในขณะนี้ พื้นที่หน่วยความจำได้ถูกเปิดสำหรับ a ซึ่งมี 10 องค์ประกอบ ใช้ชื่ออาร์เรย์บวก [ตัวห้อย] เพื่อเรียกมันว่า a[2] อย่างไรก็ตาม องค์ประกอบยังไม่ได้เริ่มต้นในขณะนี้ และ การโทรจะกลับไม่ได้กำหนด
รหัสต่อไปนี้กำหนดอาร์เรย์ตัวแปรและกำหนดค่า
var a = อาร์เรย์ใหม่ ();
ก[0] = 10;
ก[1] = "aaa";
ก[2] = 12.6;
ตามที่กล่าวไว้ข้างต้น วัตถุสามารถวางในอาร์เรย์ได้ เช่นโค้ดต่อไปนี้
var a = อาร์เรย์ใหม่ ();
[0] = จริง;
a[1] = document.getElementById("ข้อความ");
ก[2] = {x:11, y:22};
a[3] = อาร์เรย์ใหม่();
อาร์เรย์สามารถกำหนดค่าได้โดยตรงเมื่อสร้างอินสแตนซ์ เป็นต้น
var a = อาร์เรย์ใหม่ (1, 2, 3, 4, 5);
วาร์ ข = [1, 2, 3, 4, 5];
ทั้ง a และ b เป็นอาร์เรย์ แต่ b ใช้การประกาศโดยนัยเพื่อสร้างอินสแตนซ์อื่น ในเวลานี้ หากใช้ alert(a==b) false จะปรากฏขึ้น
1.2 อาร์เรย์หลายมิติ
ในความเป็นจริง Javascript ไม่รองรับอาร์เรย์หลายมิติ ใน asp คุณสามารถใช้ dim a(10,3) เพื่อกำหนดอาร์เรย์หลายมิติได้ หากคุณใช้ var a = new Array(10,3) an ข้อผิดพลาดจะถูกรายงาน แต่ตามที่กล่าวไว้ก่อนหน้านี้ อาร์เรย์ มันสามารถมีวัตถุได้ ดังนั้นองค์ประกอบในอาร์เรย์จึงสามารถประกาศเป็นอาร์เรย์ได้ เป็นต้น
var a = อาร์เรย์ใหม่ ();
a[0] = อาร์เรย์ใหม่();
ก[0][0] = 1;
alert(a[0][0]); // ปรากฏขึ้น 1
กำหนดค่าเมื่อประกาศ
var a = อาร์เรย์ใหม่ ([1,2,3], [4,5,6], [7,8,9]);
วาร์ ข = [[1,2,3], [4,5,6], [7,8,9]];
เอฟเฟกต์จะเหมือนกัน a ใช้การสร้างอินสแตนซ์ปกติ b คือการประกาศโดยนัย และผลลัพธ์คืออาร์เรย์หลายมิติ
1.3 ตัวอักษรอาร์เรย์
ฉันไม่รู้จริงๆว่าสิ่งนี้เรียกว่าอะไรในภาษาจีน อาร์เรย์ข้อความ?
เมื่อพูดถึงอาร์เรย์ เราต้องพูดถึง Array Literals จริงๆ แล้วอาร์เรย์เป็นอ็อบเจ็กต์พิเศษที่มีคุณสมบัติและวิธีการเฉพาะ ค่า Array Literals คล้ายกับอาร์เรย์มาก โดยพื้นฐานแล้ว Array Literals เป็นคอลเลคชันของข้อมูลประเภทหนึ่ง และการประกาศและการเรียกใช้จะแตกต่างจากอาร์เรย์
var aa = วัตถุใหม่ ();
aa.x = "แมว";
aa.y = "แดดจัด";
alert(aa.x); //ป๊อปอัพ cat
สร้างวัตถุอย่างง่าย โดยทั่วไปการโทรจะผ่าน aa.x หากใช้เป็นตัวอักษรอาร์เรย์ alert(aa["x"]) ก็จะปรากฏขึ้นเช่นกัน
var a = {x:"แมว", y:"ซันนี่"};
alert(a["y"]); //ป๊อปอัพซันนี่
นี่เป็นอีกวิธีหนึ่งในการสร้างวัตถุ ผลลัพธ์ก็เหมือนกัน