繁体   English   中英

数组中的数组,在对象中?

[英]Array within an array, within an object?

HeroName = new Hero()
HeroName.Spells = [];
HeroName.Spells[0].Type = [];

这不起作用=(,即使我尝试新的Array()或其他任何东西。是不是可以在数组中做数组?这就是我想要的:

HeroName.Spells[0].Type[0] = new DmgSpell();
HeroName.Spells[0].Type[1] = new Buff();

我知道我可以做点什么

HeroName.Spells[0][0] = new DmgSpelL();
HeroName.Spells[0][1] = new Buff();

但这并不容易阅读

难道我做错了什么? 我已经尝试了所有可能的组合,我能想到并使用谷歌搜索“数组中的数组”给我其他结果,但没有帮助我。 任何帮助是极大的赞赏

你错过了一步。 您尚未将HeroName.Spells[0]声明为对象,因此您不能使用Type属性,因为它不存在。 这有效:

HeroName = new Hero();
HeroName.Spells = [];
HeroName.Spells[0] = {};
HeroName.Spells[0].Type = [];

将HeroName.Spells [0]设置为Object,否则,它是undefined undefined不能有任何属性。

HeroName.Spells[0] = {};

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

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