วัตถุที่มุ่งเน้นเป็นวิธีการทำความเข้าใจและการสรุปโลกแห่งความเป็นจริงและเป็นผลิตภัณฑ์ของการพัฒนาเทคโนโลยีการเขียนโปรแกรมคอมพิวเตอร์ในขั้นตอนที่กำหนด
ความหมายของวัตถุ
วัตถุอาจเป็นรถยนต์บุคคลสัตว์ข้อความรูปแบบหรืออะไรก็ตามที่มีอยู่ ฯลฯ
วัตถุคือ:
แอตทริบิวต์ -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
วิธี -------------------------------------------------------------------------------------------------------------------------------
เหตุการณ์ -------- สามารถตอบสนองต่อสิ่งที่เกิดขึ้นกับวัตถุ
เราสามารถเข้าใจวัตถุที่มุ่งเน้นโดยการสร้างวัตถุของบุคคล
ประชากร:
สองมือสองฟุตหนึ่งหัวและคุณสามารถวิ่งได้
มือเท้าและหัวเป็นคุณลักษณะของมนุษย์และการวิ่งเป็นวิธีการของมนุษย์
ก่อนอื่นมาสร้างวัตถุด้วยวิธีที่ง่ายที่สุด
var person = {head: "One", Hand: "Two", Foot: "Two", Run: function () {console.log ("Running"); -วิธีนี้ไม่สามารถใช้งานได้จริงเพราะมันคือการสร้างวัตถุแยกต่างหากและวัตถุนี้ไม่มีการเชื่อมต่อกับโครงสร้างข้อมูลทั่วไปใด ๆ
จากนั้นเราสร้างวัตถุโดยใช้ตัวสร้าง
var person = function () {// โปรดทราบว่าตัวอักษรเริ่มต้นเป็นตัวพิมพ์ใหญ่ this.head = "one", this.hand = "สอง", this.foot = "สอง", this.run = function () {alert ("Running"); }} var joan = คนใหม่ (); document.write (joan.run ()) // "กำลังทำงาน"นี่คือวัตถุที่สร้างขึ้นด้วยตัวสร้างและจากนั้นเราเพิ่มบรรทัดของรหัสเพื่อดู
var niki = คนใหม่ (); การแจ้งเตือน (Joan == Niki) // false;
ใช่ตอนนี้มีการสร้างอินสแตนซ์วัตถุที่แตกต่างกันสองรายการ
แต่ละฟังก์ชั่นใน JavaScript มีแอตทริบิวต์ต้นแบบ หากใช้ฟังก์ชั่นเป็นตัวสร้างแอตทริบิวต์นี้จะถูกสร้างขึ้นโดยอัตโนมัติโดยการโทรใหม่เพื่อสร้างต้นแบบของวัตถุ
console.log (Joan)
คุณจะเห็นว่ามี __proto __: บุคคลที่ __proto__ เป็นห่วงโซ่ต้นแบบของ Joan มันเป็นต้นแบบที่ชี้ไปที่บุคคล
เมื่อ JS สร้างวัตถุ (ไม่ว่าจะเป็นวัตถุปกติหรือวัตถุฟังก์ชัน) มันมีคุณสมบัติในตัวที่เรียกว่า __proto__ ซึ่งใช้เพื่อชี้ไปที่ต้นแบบวัตถุต้นแบบต้นแบบของวัตถุฟังก์ชันที่สร้างขึ้น
ความเข้าใจบางอย่างเกี่ยวกับเครือข่ายต้นแบบถูกเขียนขึ้นอย่างละเอียดในการเขียนโปรแกรมขั้นสูงของ JavaScript หากคุณสนใจคุณสามารถตรวจสอบได้ นอกจากนี้ยังมีเอกสาร PDF ออนไลน์ แต่ขอแนะนำให้ซื้อหนังสือเล่มนี้ซึ่งรองรับเวอร์ชันดั้งเดิม
จากนั้นการเปลี่ยนแปลงใด ๆ ในคุณสมบัติต้นแบบของต้นแบบสามารถนำไปใช้กับแต่ละวัตถุอินสแตนซ์ที่สร้างขึ้นกับบุคคลใหม่ () ไม่ว่าจะถูกสร้างขึ้นก่อนหรือหลังการเปลี่ยนแปลง เพิ่มฟังก์ชั่นใหม่ให้กับ Person.prototype รายละเอียดมีดังนี้:
var person = function () {// note ตัวอักษรเริ่มต้นจะเป็นตัวพิมพ์ใหญ่ this.head = "one", this.hand = "สอง", this.foot = "สอง"} person.prototype.run = function () {alert ("Running"); } var joan = คนใหม่ (); Joan.run () // "Running" Alert (Joan .__ Proto __ === person.prototype) // 'True'อย่างที่คุณเห็นวิธีการสร้างในต้นแบบสามารถเรียกได้และโซ่ต้นแบบของ Joan ชี้ไปที่ต้นแบบของบุคคล
ดูอีกครั้ง:
var niki = คนใหม่ (); // "runing" person.prototype.run = function () {alert ("Running Running")} joan.run () // "Running" niki.run () // "Running Running"ดูการปรับเปลี่ยนวิธีต้นแบบของบุคคลวิธีทั้งหมดในอินสแตนซ์วัตถุที่สร้างโดยบุคคลใหม่ () ได้รับการแก้ไขเนื่องจากอินสแตนซ์ทั้งหมดแบ่งปันวิธีการทำงานต้นแบบเดียวกัน นี่คือการประยุกต์ใช้ต้นแบบ
นี่คือความเข้าใจในการสร้างวัตถุ
ฉันเขียนมานานแล้ว ฉันไม่รู้ว่ามีข้อผิดพลาดใด ๆ หากมีข้อผิดพลาดใด ๆ โปรดให้คำแนะนำกับฉัน
ครั้งต่อไปฉันจะเขียนเกี่ยวกับการสืบทอดเชิงวัตถุ
ข้างต้นเป็นเนื้อหาทั้งหมดของความเข้าใจที่ครอบคลุมของวัตถุการสร้างโปรแกรม JS OOP ที่นำเสนอโดยบรรณาธิการ ฉันหวังว่าทุกคนจะสนับสนุน wulin.com เพิ่มเติม ~