我想知道在 javascript 中创建嵌套对象的正确方法。我想要一个名为“defaultsettings”的基础对象。它应该有 2 个属性(对象类型):ajaxsettings 和 uisettings。我知道我可以写类似的东西
var defaultsettings = new Object();
var ajaxsettings = new Object();
defaultsettings.ajaxsettings = ajaxsettings.. etc.
但我想知道的是如何以这种方式输入(我认为这是一种更正确的方式):
var defaultsettings = {
var ajaxsettings = { ... }
};
我想你已经明白了。谢谢!
最佳答案
如果您事先知道设置,您可以在一条语句中定义它:
var defaultsettings = {
ajaxsettings : { "ak1" : "v1", "ak2" : "v2", etc. },
uisettings : { "ui1" : "v1", "ui22" : "v2", etc }
};
如果您事先不知道这些值,您可以只定义顶级对象然后添加属性:
var defaultsettings = { };
defaultsettings["ajaxsettings"] = {};
defaultsettings["ajaxsettings"]["somekey"] = "some value";
或者介于两者之间,将具有嵌套空对象的顶层定义为属性,然后将属性添加到那些嵌套对象:
var defaultsettings = {
ajaxsettings : { },
uisettings : { }
};
defaultsettings["ajaxsettings"]["somekey"] = "some value";
defaultsettings["uisettings"]["somekey"] = "some value";
您可以使用上述技术嵌套任意深度,并且在方括号中有字符串文字的任何地方都可以使用变量:
var keyname = "ajaxsettings";
var defaultsettings = {};
defaultsettings[keyname] = {};
defaultsettings[keyname]["some key"] = "some value";
请注意,您可以不在 { } 文字语法中使用变量作为键名。
关于javascript - JavaScript 中的嵌套对象,最佳实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7942398/