简体   繁体   中英

How to set a JS object property name dynamically

I'm a beginner in javascript and I'm having trouble creating this object below dynamically. All names must be extracted from a text entry and dynamically inserted into the object.

var object = {
        "users" : {
            // Names dynamically inserted
            "Isaac" : {
                "name" : "Isaac de Araujo Meneses",
                "age" : "25" 
            }
            "John"{
                "name" : "John Miller",
                "age" : "32" 
            }
        }
    }

This is the code that I wrote:

var name = form.name.value;

    var object = {
        "users" : {
            // Names dynamically inserted
            name : {
                "name" : name,
                "age" : "25" 
            }
        }
    }

Base code:

var object = {
  users: {
    "John": {
      name: "John Smith",
      age: "140" // Why not?
    }
  }
}

To add a new user:

var name = form.name.value;
var age = form.age.value;
object.users[name] = {
  name: name,
  age: age
}

You can set the object key dynamically like that:

var name = form.name.value; //suppose you get 'Isaac' here

var object = {
    "users" : {
    }
}

object.users[name] = {
    name: name,
    age: 25 
}

console.log(object);
/*
{
    "users": {
            "Isaac": {
                "name": "Isaac",
                "age": 25
            }
        }
    }
*/

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM