首頁  >  文章  >  web前端  >  如何在 JavaScript 中存取嵌套子物件的父物件?

如何在 JavaScript 中存取嵌套子物件的父物件?

Patricia Arquette
Patricia Arquette原創
2024-10-25 02:04:30942瀏覽

How Can You Access the Parent Object of a Nested Child Object in JavaScript?

Javascript 物件:確定親子關係

在 Javascript 中,物件可以嵌套,建立層次結構。但是,從嵌套子物件存取父物件可能具有挑戰性。

考慮以下嵌套物件:

<code class="javascript">obj: { subObj: { foo: 'hello world' } };</code>

要引用s 中的子對象,我們使用:

<code class="javascript">var s = obj.subObj;</code>

現在,我們想要使用s 取得父對象obj。

不幸的是,Javascript 中沒有直接的機制可以從子物件中檢索父物件。這是因為子對像不知道其父對象的存在。

替代解決方案

一個解決方法是利用函數在巢狀物件中建立父子關係。擴充上面的程式碼:

<code class="javascript">var main = {
    name : "main object",
    child : {
        name : "child object",
        parent : null
    },
    init : function() {
        this.child.parent = this;
        delete this.init;
        return this;
    }
}.init();</code>

在 init 函數中,我們將父物件指派給子物件內的父屬性。透過呼叫它,我們從嵌套子物件中引用當前物件(即主物件)。最後,為了程式碼清晰,我們刪除了 init 函數。

使用這種技術,我們現在可以從子物件存取父物件:

<code class="javascript">main.child.parent.name // returns "main object"</code>

以上是如何在 JavaScript 中存取嵌套子物件的父物件?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn