gpt4 book ai didi

javascript - 如果不知道 javascript 中每个数组的长度,如何比较两个不同长度的数组?

转载 作者:数据小太阳 更新时间:2023-10-29 05:53:10 25 4
gpt4 key购买 nike

我陷入了困境。我有 2 个数组,我不知道每个数组的长度,它们的长度可以相同,也可以不相同,我不知道,但我需要创建一个新数组,其中的数字在 (2, 10).

对于这种情况:

    var a = [2,4,10];
var b = [1,4];

var newArray = [];

if(a.length >= b.length ){
for(var i =0; i < a.length; i++){
for(var j =0; j < b.length; j++){
if(a[i] !=b [j]){
newArray.push(b);
}
}
}
}else{}

我不知道为什么我的代码永远不会达到第一个条件,也不知道当 b 的长度比 a 长时该怎么办。

最佳答案

如果我没有正确理解您的要求,那么您的代码似乎存在逻辑错误。

此代码会将 a 中不在 b 中的所有元素放入 newArray

var a = [2, 4, 10];
var b = [1, 4];

var newArray = [];

for (var i = 0; i < a.length; i++) {
// we want to know if a[i] is found in b
var match = false; // we haven't found it yet
for (var j = 0; j < b.length; j++) {
if (a[i] == b[j]) {
// we have found a[i] in b, so we can stop searching
match = true;
break;
}
// if we never find a[i] in b, the for loop will simply end,
// and match will remain false
}
// add a[i] to newArray only if we didn't find a match.
if (!match) {
newArray.push(a[i]);
}
}

澄清一下,如果

a = [2, 4, 10];
b = [4, 3, 11, 12];

然后 newArray 将是 [2,10]

关于javascript - 如果不知道 javascript 中每个数组的长度,如何比较两个不同长度的数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8178086/

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