我对 Javascript 有点陌生,我正在尝试创建内部带有数组的对象。 在 C 中,我可以使用结构轻松地解决它,但在 Javascript 中我有点迷失了。这是我的代码:
function Switch() {
var title;
var toggleModeEnable;
};
function Layer () {
sw = [8];
for (j = 0; j < 8; j++) {
sw[j] = new Switch();
};
};
var lr = [10];
for (i = 0; i < 10; i++) {
lr[i] = new Layer();
};
显然,这是行不通的。 我想要实现的是拥有一个包含 10 个元素的数组 (lr)。它们中的每一个都应该是 8 个元素 (sw) 的 ayyay,并且每个元素都有两个属性(title 和toggleModeEnable),并通过如下方式访问它们:
lr[1].sw[3].title
但是这样的事情会引发如下错误:
"Uncaught TypeError: Cannot read property '3' of undefined at :1:9"
我在这里缺少什么?
最佳答案
我相信您正在寻找:
function Switch() {
this.title = '';
this.toggleModeEnable = false;
}
function Layer () {
this.sw = [];
for (let j = 0; j < 8; j++) {
this.sw.push(new Switch());
}
}
const lr = [];
for (let i = 0; i < 10; i++) {
lr.push(new Layer());
}
关于javascript - 带有数组的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64014126/