gpt4 book ai didi

javascript - 为什么这些 for 循环不起作用?

转载 作者:行者123 更新时间:2023-11-30 16:31:28 25 4
gpt4 key购买 nike

我有 5 个嵌套的 for 循环:

let tags = Tags.find().fetch();
let cases = {};

for (i = 0; i < tags.length; i++) {

cases.problem = {};
cases.problem.one = {};
cases.problem.one.name = tags[i].name;
cases.problem.one.value = 50;

cases.solution = {};

cases.solution.one = tags[i].types.slice(0,5);

for (j = i + 1; j < (tags.length - 1); j++) {

cases.problem.two = {};
cases.problem.two.name = tags[j].name;
cases.problem.two.value = 30;

cases.solution.two = tags[j].types.slice(0,3);

for (k = j + 1; k < (tags.length - 2); k++) {


cases.problem.three = {};
cases.problem.three.name = tags[k].name;
cases.problem.three.value = 20;

cases.solution.three = tags[k].types.slice(0,2);

for (l = k + 1; l < (tags.length - 3); l++) {

cases.problem.four = {};
cases.problem.four.name = tags[l].name;
cases.problem.four.value = 0;

cases.solution.four = [""];

for (n = l + 1; n <= (tags.length - 4); n++) {

cases.problem.five = {}
cases.problem.five.name = tags[n].name;
cases.problem.five.value = 0;

cases.solution.five = [""];

console.log(cases)

// Cases.insert(cases)

}
}
}
}
}

他们在 3er 之前工作正常,我不知道哪里出了问题。

注意:Tags.length 始终为 5。

注意 2:我正在尝试对存储在标签数组中的对象进行所有可能的组合

注意 3: 标签是具有以下形式的对象: 标签:{ 名称:字符串 类型:[数组]

我总是有 5 个标签,所以在上面的代码中 Tags.find().fetch() 总是返回 5 个对象。好的,我想要/需要的是:

tags[0] tags[1] tags[2] tags[3] tags[4]
tags[0] tags[1] tags[2] tags[4] tags[3]
....

类似的东西

最佳答案

第 4 和第 5 个嵌套循环将永远不会执行,因为它们的条件无法满足。在 i = 0 处进行第一次迭代:

一级循环 -> for(i = 0; i < 5; i++)
二级循环 -> for(j = 1; j < 4; j++)
三级循环 -> for(k = 2; k < 3; k++)
4 级循环 -> for(l = 3; l < 2; l++)
5 级循环 -> for(n = 4; n <= 1; n++)

如您所见,从第一次迭代开始,最后两个循环将不会运行。

关于javascript - 为什么这些 for 循环不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33261105/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com