Languages
[Edit]
EN

JavaScript - set a value of nested key string descriptor inside a object

2 points
Created by:
JustMike
26890

In this article we would like to show how to sets a value of nested key string descriptor inside a object using modern ECMA Script (modern JavaScript).

Example solution:

// ONLINE-RUNNER:browser;

const setNestedProperty = (object, path, value) => {
    if (path.length == 0) {
        return;
    }
    const limit = path.length - 1; 
    for (let i = 0; i < limit; ++i) {
        const name = path[i];
        object = object[name] || (object[name] = { });
    }
    const name = path[limit];
    object[name] = value;
}

// Usage example:

const object = {
    name: 'John',
    metadata: {
        type: 'json'
    }
};
const myKeyPath = ['metadata', 'key'];
const myKeyValue = 'my-key-value';

setNestedProperty(object, myKeyPath, myKeyValue);
console.log(`object.metadata.key='${object.metadata.key}'`);

 

Native Advertising
­čÜÇ
Get your tech brand or product in front of software developers.
For more information Contact us
Dirask - friendly IT community for everyone.

ÔŁĄ´ŞĆ­čĺ╗ ­čÖé

Join