Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> JavaScript

Truy cập đối tượng thông qua đối tượng khác trong JavaScript


Dưới đây là mã để truy cập một đối tượng thông qua đối tượng khác trong JavaScript (chia sẻ tham chiếu/giá trị).

Ví dụ

<!DOCTYPE html> <html lang="vi"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Access object via object</title> <style> body { font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif; } .result { font-size: 18px; font-weight: 500; color: rebeccapurple; } </style> </head> <body> <h1>Truy cập đối tượng qua đối tượng khác trong JavaScript</h1> <div class="result"></div> <button class="Btn">NHẤN VÀO ĐÂY</button> <h3>Nhấn nút để hiển thị obj2</h3> <script> let resEle = document.querySelector(".result"); let BtnEle = document.querySelector(".Btn"); let obj = { firstName: "Rohan", lastName: "Sharma", welcome() { return "Welcome " + this.firstName + " " + this.lastName; }, }; let obj2 = { firstName: "Mohit", lastName: obj.lastName, welcomeString: obj.welcome(), }; BtnEle.addEventListener("click", () => { resEle.innerHTML = "obj2.firstName = " + obj2.firstName + "<br>"; resEle.innerHTML += "obj2.lastName = " + obj2.lastName + "<br>"; resEle.innerHTML += "obj2.welcomeString = " + obj2.welcomeString + "<br>"; }); </script> </body> </html>

Kết quả

Khi nhấn nút:

  • obj2.firstName = Mohit
  • obj2.lastName = Sharma (tham chiếu giá trị chuỗi từ obj.lastName)
  • obj2.welcomeString = Welcome Rohan Sharma (giá trị trả về tại thời điểm tạo obj2)

obj2.lastName copy giá trị nguyên thủy (string). obj2.welcomeString lưu kết quả gọi hàm obj.welcome() (dùng this của obj). Nếu obj.lastName thay đổi sau, obj2.lastName không đổi (string immutable). Nếu obj.welcome() trả về object, thì sẽ share reference.