javascript - 在多维数组中比较以找到在其他多维数组中使用的适当索引失败

标签 javascript arrays multidimensional-array

我对 Javascript 中的函数有疑问:

我只是将一个输入数组与另一个数组进行比较,并根据结果返回一些内容,但出于某种原因,我的比较不起作用...

这是我的函数:

const createArrayColor = (labels) => {
  const combi = [
    ["bronze","gold","new","silver"],
    ["bronze","gold","silver"],
    ["gold","new","silver"],
    ["bronze","gold","new"],
    ["bronze","new","silver"],
    ["gold","silver"],
    ["bronze","gold"],
    ["gold","new"],
    ["bronze","silver"],
    ["new","silver"],
    ["bronze","new"],
    ["gold"],
    ["silver"],
    ["bronze"],
    ["new"],
  ];

  const color = [
    ["#614E1A","#c49c48", "#f4f3f3", "#A5A49B"],
    ["#614E1A", "#c49c48", "#A5A49B"],
    ["#c49c48", "#f4f3f3", "#A5A49B"],
    ["#614E1A", "#c49c48", "#f4f3f3"],
    ["#614E1A", "#f4f3f3", "#A5A49B"],
    ["#c49c48", "#A5A49B"],
    ["#614E1A", "#c49c48"],
    ["#c49c48", "#f4f3f3"],
    ["#614E1A", "#A5A49B"],
    ["#f4f3f3", "#A5A49B"],
    ["#614E1A", "#f4f3f3"],
    ["#c49c48"],
    ["#A5A49B"],
    ["#614E1A"],
    ["#f4f3f3"],
  ];

  let i = 0;

  combi.forEach((c) => {
      console.log("Color: " + color[i]);
      console.log("Combi:  " + c + " ,type:  " + c.constructor.name );
      console.log("labels: " + labels + " ,type:  " + labels.constructor.name );
      console.log("Is it equal? " + (labels === c));

    if (labels === c) {
      return color[i];
    }
    i = i + 1;
  })
}

(顺便说一句,如果你知道如何在 JS 中组合数组,我也想知道,我确信有比我所做的更好的方法,但我没有找到)

正如你所看到的,我将 labelscombi 的每个元素进行了比较,但它始终为 false...

Here are the results of the console.log

我认为这是我在某个地方犯的一个小错误,但我找不到它...

最佳答案

“c”和“labels”是两个不同的数组,内容完全相同。请参阅此 question 以了解如何比较数组。

关于javascript - 在多维数组中比较以找到在其他多维数组中使用的适当索引失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55021427/

相关文章:

javascript - 如何返回列值?

javascript - 使用reduce fnt代替map

JavaScript - 查找所有具有类的元素,查找重复项并显示它们

javascript - 为什么我们不能使用 for 循环来创建动画?

php - 如何使用 For 循环将数组的数据插入不同的行

arrays - 如何将数组中的所有字符串大写?

java - 将文本文件转换为二维数组

matlab - 与主对角线对称且行总和等于 1 的二维数组

javascript - 左右滑动标签

javascript - Microsoft 脚本编辑器 (MSE) 下载