Javascript JQuery.each()在.shift()之后跳过数组中的偶数项

Javascript JQuery.each()在.shift()之后跳过数组中的偶数项,javascript,jquery,arrays,Javascript,Jquery,Arrays,我不知道为什么。我显示时,每个项目都会跳过?我可以看到它被正确地移除(或者至少我认为是这样),但是显示关闭了 本质上,我想在两个数组中循环使用相同的项,如果它们相等,则不显示它们,如果不显示它们,并且一旦内部循环完成,则将第一个数组的第一项移开,这样它就不会显示重复的值(即:“Jamie | Joe”和“Joe | Jamie”) 我把小提琴系上了。我错过了什么 peoark=['Jamie','Joe','Jeri','Ron','Ann'] peopleB=['Jamie','Joe','

我不知道为什么。我显示时,每个项目都会跳过?我可以看到它被正确地移除(或者至少我认为是这样),但是显示关闭了

本质上,我想在两个数组中循环使用相同的项,如果它们相等,则不显示它们,如果不显示它们,并且一旦内部循环完成,则将第一个数组的第一项移开,这样它就不会显示重复的值(即:“Jamie | Joe”和“Joe | Jamie”)

我把小提琴系上了。我错过了什么

peoark=['Jamie','Joe','Jeri','Ron','Ann']
peopleB=['Jamie','Joe','Jeri','Ron','Ann']
$。每个(参数、函数(i、值){
$(“#itemsRemoved”)。追加(i+“”+peoard+”
) 美元。每个(人B,功能(j,值2){ 如果(值!=值2){ $(“#项”)。追加(i+“”+value+“|”+j+“”+value2+“
”) } })//结束人员B p.shift() }); //结束人员A



如果我理解您的意图,这就是您所追求的根本逻辑

var peoake=['Jamie'、'Joe'、'Jeri'、'Ron'、'Ann'];
var peopleB=['Jamie'、'Joe'、'Jeri'、'Ron'、'Ann'];
forEach(函数(名称1,索引){
peopleB.slice(索引).forEach(函数名2){
如果(名称1!==名称2){
console.log(name1,name2);
}
});

});如果我理解您的意图,这就是您所追求的根本逻辑

var peoake=['Jamie'、'Joe'、'Jeri'、'Ron'、'Ann'];
var peopleB=['Jamie'、'Joe'、'Jeri'、'Ron'、'Ann'];
forEach(函数(名称1,索引){
peopleB.slice(索引).forEach(函数名2){
如果(名称1!==名称2){
console.log(name1,name2);
}
});

});问题是因为在循环数组时,
shift()
调用正在修改数组

通过在单个数组中循环,可以完全避免该问题并简化逻辑。然后,可以使用内部循环遍历连续跟随当前循环的成员。使用此方法时,不能有重复项。试试这个:

var people=['Jamie','Joe','Jeri','Ron','Ann'];
人员。forEach(功能(人员,i){
对于(var j=i+1;j${i}${person}{124;${j}${people[j]}

`) } })
p{margin:0;}



这个问题是因为在循环数组时,
shift()
调用正在修改数组

通过在单个数组中循环,可以完全避免该问题并简化逻辑。然后,可以使用内部循环遍历连续跟随当前循环的成员。使用此方法时,不能有重复项。试试这个:

var people=['Jamie','Joe','Jeri','Ron','Ann'];
人员。forEach(功能(人员,i){
对于(var j=i+1;j${i}${person}{124;${j}${people[j]}

`) } })
p{margin:0;}



每个都在为您执行for循环,迭代数组的索引。您的内部逻辑正在更改它正在循环的数组,这可能会损坏它的内部索引指向的位置。如果(value!=value2&&value!=undefined&&value2!=undefined){…}检查是否也未定义。每个逻辑都在为您执行for循环,在数组的索引上迭代。您的内部逻辑正在更改它正在循环的数组,可能会损坏它的内部索引所指向的位置。如果(value!=value2&&value!=undefined&&value2!=undefined){…}也检查未定义的数组。没有问题,很乐意提供帮助。请注意,这里仍然有一个内部循环。没问题,很乐意提供帮助。注意,这里仍然有一个内部循环。