Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/433.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何循环数组并保持它们之间的索引增长?_Javascript_Arrays - Fatal编程技术网

Javascript 如何循环数组并保持它们之间的索引增长?

Javascript 如何循环数组并保持它们之间的索引增长?,javascript,arrays,Javascript,Arrays,我是用英语写的,但它并不是基于任何语言。我似乎误解了这一逻辑 我有一个带有不同停车位的停车系统(适用于汽车、摩托车、大型汽车等) 要初始化停车系统,我必须循环初始设置数组,并通过指定每个ID和类型创建空点 我是这样做的: 这是我的配置,可以在系统初始化之前添加号码和容量类型 var config = { capacityPerType: { compact: 150, large: 100 } } manager = new Manager(co

我是用英语写的,但它并不是基于任何语言。我似乎误解了这一逻辑

我有一个带有不同停车位的停车系统(适用于汽车、摩托车、大型汽车等)

要初始化停车系统,我必须循环初始设置数组,并通过指定每个ID和类型创建空点

我是这样做的:

这是我的配置,可以在系统初始化之前添加号码和容量类型

var config = {
    capacityPerType: {
        compact: 150,
        large: 100
    }
}

manager = new Manager(config);
以下是我如何循环遍历所有类型并为它们指定一个点ID:

    var counterAdd = 0;
    for(slotType in config.capacityPerType) {

        var capacityPerType = parseInt( config.capacityPerType[slotType] );
        for(var i = 1; i <= capacityPerType; i++) {
            var newId = i + counterAdd;

            if (!this.defaults.slots[slotType]) {
                this.defaults.slots[slotType] = [];
            }
            this.defaults.slots[slotType][newId] = new Slot({id:newId,type:slotType});
        }

        counterAdd = capacityPerType;
    }
var counterAdd=0;
for(配置中的slotType.capacityPerType){
var capacityPerType=parseInt(config.capacityPerType[slotType]);

对于(var i=1;i我想你所需要的就是

counterAdd += capacityPerType;
代替

counterAdd = capacityPerType;
另外,你不需要在上面的几行中解析int,它已经是int了


这里有一个jsfiddle来确认上述内容:

谢谢,我不知怎么错过了^^