繁体   English   中英

Javascript动态嵌套对象

[英]Javascript dynamic nested object

我的目标是在主对象中生成序列化的对象。 太阳系是我嵌套的想法,我可以通过调用它来访问变量

universe.system1.planet4.x

宇宙>系统>行星>等

我坚持要生成任何嵌套的内容。 到目前为止,我只能获得1级嵌套才能正常工作。

setInterval(onTimerTick, 1000); 
function onTimerTick() {

var entityCount=4;
  for (i=1; i<entityCount;i++){
    console.log('system' + i)
    universe['planet'+i]=[entityCount,entityCount,entityCount,entityCount];  
  }//entitycounts in object are placeholder for more data
 console.log(universe);
}

var universe = {
}

输出量

Object {
  system0: [5, 5, 5, 5],
  system1: [5, 5, 5, 5],
  system2: [5, 5, 5, 5],
  system3: [5, 5, 5, 5]
}

每当我尝试添加任何嵌套时,它都不会生成。

是这样吗?

您将必须创建X嵌套循环,其中X是您要创建的嵌套级别的数量。

 const nbSystem = 5; const nbPlanetPerSystem = 3; // Create the base const universe = {}; // Generate systems for (let i = 0; i < nbSystem; i += 1) { universe[`system${i + 1}`] = {}; // Generate planets for (let j = 0; j < nbPlanetPerSystem; j += 1) { universe[`system${i + 1}`][`planet${j + 1}`] = 'something'; } } console.log(universe); console.log(universe.system3.planet3); 

暂无
暂无

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

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