0

我是 JavaScript 新手。
我想要一个具有这种结构的对象。

Users = {
    User1 : {
        "name" : "name",
        "id"   : "123"
    }
    User2 : {
        "name" : "name",
        "id"   : "123"
    }
}

所以我应该这样定义用户:

 var Users = {};

如何添加新用户Users?以及如何从Users对象内部的用户读取和写入,如下所示:

 // reading
 User1_name = Users.User1.name;

 // writing
 Users.User1.name = "new name";
4

2 回答 2

3

您的代码很好(除了缺少的逗号@Philipp 指出),但您也可以使用数组:

var users = [
    {
        "name" : "name",
        "id"   : "123"
    },
    {
        "name" : "name",
        "id"   : "123"
    }
];

var userName = users[0].name;

users[0].name = "new name";
于 2013-11-01T10:12:30.007 回答
2

可以这样定义用户,你只是少了一个逗号

Users = {
    User1 : {
        "name" : "name",
        "id"   : "123"
    } <--
    User2 : {
        "name" : "name",
        "id"   : "123"
    }
}

应该是(为清楚起见添加了 var )

var Users = {
    User1 : {
        "name" : "name",
        "id"   : "123"
    },
    User2 : {
        "name" : "name",
        "id"   : "123"
    }
}

可以按照您描述的方式进行阅读和写作。

要添加新用户,您可以执行以下操作

Users["User3"] = {
    "name" : "name3",
    "id"   : "1234"
}
于 2013-11-01T10:13:26.393 回答