假设你有这样的段落标题:
我想尽可能模仿对象调用。
因此,如果我致电H1
,它将返回标题Header1
,但如果我致电H1.1
它将返回SubHeader 1.1
。
我想创建一个像这样的对象:
var H1 = {
1: SubHeader 1.1,
2: SubHeader 1.2,
3: SubHeader 1.3,
}
问题是如何实现H1
的调用?
答案 0 :(得分:1)
以下是3种方法。选择适合您需求的那个
//Nested objects
var headers = {
"1": {
"": "Header 1",
"1": "Subheader 1.1",
"2": "Subheader 1.2",
},
"2": {
"1": "Subheader 2.1"
}
};
console.log(headers["1"][""]);
console.log(headers["1"]["1"]);
//Each header has is own object
var h1 = {
"": "Header 1",
"1": "Subheader 1.1",
"2": "Subheader 1.2"
};
var h2 = {
"1": "Subheader 1.2"
};
console.log(h1[""]);
console.log(h1["1"]);
//One object to rule them all
var headersBis = {
"1": "Header 1",
"1.1": "Subheader 1.1",
"1.2": "Subheader 1.2",
"2.1": "Subheader 2.1"
};
console.log(headersBis["1"]);
console.log(headersBis["1.1"]);
答案 1 :(得分:0)
你应该像这样构建你的对象:
var headers = {
"H1" : "Header 1",
"H1.1" : "SubHeader 1.1",
"H1.2" : "SubHeader 1.2",
"H1.3:" : "SubHeader 1.3"
}
然后像headers["H1"]
或headers["H1.1"]
答案 2 :(得分:0)
您正在定义object
,无法满足您的要求。根据您的要求,您可以使用以下对象
var H = {
'1': "Header 1",
'1.1': "SubHeader 1.1",
'1.2': "SubHeader 1.2",
'1.3': "SubHeader 1.3"
}
简单地称他们为
H['1'], H['1.1'], H['1.2']