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

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

Susan Sarandon
Susan Sarandon原創
2024-10-25 03:29:29279瀏覽

How can I access the parent object of a nested object in JavaScript?

在JavaScript 中取得巢狀物件的父物件

使用巢狀JavaScript 物件時,存取巢狀物件的父物件可能很有用給定的巢狀物件。然而,這在 JavaScript 中是不可能直接實現的。

巢狀物件(子物件)缺乏對其父物件(父物件)的明確參考。這意味著子物件無法直接存取其父物件的屬性或方法。

例如,給定以下物件層次結構:

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

分配對子物件的參考:

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

s 沒有內建方法可以直接存取 obj 物件。

解決這個問題的一種方法是在子物件中手動設定對父物件的參考。這可以使用函數來完成:

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

在 init 函數中,我們將 this (主物件)指派給子物件中名為parent 的屬性。這允許 s 存取 obj:

<code class="js">s.parent.name  // Output: "main object"</code>

請記住,這種方法涉及修改原始物件結構,並且需要手動初始化。但是,它提供了一種從 JavaScript 中的嵌套物件存取父物件的方法。

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

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