สองประเภท:
ตัวแปร ECMASCRIPT มีค่าสองประเภทที่แตกต่างกัน: ค่าประเภทพื้นฐานและค่าประเภทการอ้างอิง;
ค่าประเภทพื้นฐาน: หมายถึงส่วนข้อมูลอย่างง่ายที่เก็บไว้ในหน่วยความจำสแต็ก
ค่าประเภทอ้างอิง: หมายถึงวัตถุเหล่านั้นที่เก็บไว้ในหน่วยความจำฮีปซึ่งหมายความว่าตัวแปรนั้นเป็นเพียงตัวชี้ซึ่งชี้ไปที่ตำแหน่งอื่นในหน่วยความจำและวัตถุจะถูกบันทึกจากตำแหน่งนั้น
สองวิธีในการเข้าถึง:
ค่าประเภทพื้นฐาน: เข้าถึงได้ตามค่าการทำงานกับค่าที่บันทึกไว้จริง;
ค่าประเภทอ้างอิง: เข้าถึงได้โดยอ้างอิง เมื่อสอบถามเราต้องอ่านที่อยู่หน่วยความจำจากสแต็กก่อนจากนั้นติดตามเบาะแสเพื่อค้นหาค่าที่เก็บไว้ในหน่วยความจำฮีป
การคัดลอกสองประเภท
1. การคัดลอกตัวแปรประเภทพื้นฐาน: เมื่อคัดลอกจากตัวแปรไปยังตัวแปรค่าใหม่จะถูกสร้างขึ้นในสแต็กจากนั้นค่าจะถูกคัดลอกไปยังตำแหน่งที่กำหนดให้กับตัวแปรใหม่
2. การคัดลอกตัวแปรประเภทอ้างอิง: สำเนาเป็นตัวชี้ที่เก็บไว้ในสแต็กคัดลอกตัวชี้ไปยังพื้นที่ที่จัดสรรสำหรับตัวแปรใหม่ในสแต็กและสำเนาตัวชี้นี้และตัวชี้ดั้งเดิมชี้ไปที่วัตถุเดียวกันที่เก็บไว้ในกอง;
หลังจากการดำเนินการคัดลอกเสร็จสิ้นตัวแปรทั้งสองจะอ้างถึงวัตถุเดียวกัน ดังนั้นการเปลี่ยนหนึ่งในนั้นจะส่งผลกระทบต่ออีกฝ่าย
การอภิปรายสั้น ๆ เกี่ยวกับประเภทพื้นฐานและประเภทการอ้างอิงของ JS คือเนื้อหาทั้งหมดที่ฉันได้แบ่งปันกับคุณ ฉันหวังว่าคุณจะให้ข้อมูลอ้างอิงและฉันหวังว่าคุณจะสนับสนุน wulin.com มากขึ้น