Home > Web Front-end > JS Tutorial > body text

How to Get the Parent Object from a Nested Object in JavaScript?

Susan Sarandon
Release: 2024-10-25 03:14:29
Original
706 people have browsed it

How to Get the Parent Object from a Nested Object in JavaScript?

Retrieving Parent Object from Nested Object in JavaScript

In JavaScript, accessing nested objects is a common operation. However, retrieving the parent object from a nested object can be challenging.

Consider the following scenario:

obj: { subObj: { foo: 'hello world' } };
var s = obj.subObj;
Copy after login

Now, you want to obtain a reference to the parent object obj from the variable s. Is there a method to achieve this?

The Answer

Unfortunately, nested objects in JavaScript do not have direct access to their parent objects. Therefore, it is not possible to fetch the parent object directly from the nested object.

To illustrate, let's consider the following code:

var main = {
    name : "main object",
    child : {
        name : "child object"
    }
};
Copy after login

Accessing the child's name from the main object is straightforward (i.e., main.child.name). However, attempting to access the parent's name from the child object (i.e., main.child.parent.name) will yield an error.

Alternative Solution

While direct referencing from the child object is not feasible, there is an alternative approach that utilizes a function.

var main = {
    name : "main object",
    child : {
        name : "child object"
    },
    init : function() {
        this.child.parent = this;
        delete this.init;
        return this;
    }
}.init();
Copy after login

In this code, the init function adds a parent property directly to the child object, pointing to the parent object. After this initialization, you can successfully access the parent's name from the child object by calling main.child.parent.name.

This method is a bit unorthodox but offers a solution to the problem of retrieving the parent object from a nested object in JavaScript.

The above is the detailed content of How to Get the Parent Object from a Nested Object in JavaScript?. For more information, please follow other related articles on the PHP Chinese website!

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Latest Articles by Author
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template