【问题标题】:Finding the index position of a 2-dimensional array element查找二维数组元素的索引位置
【发布时间】:2022-11-19 22:48:48
【问题描述】:

我试图找到数组元素的索引位置,但每当我记录输出时,它都会显示 -1。

这是一个二维数组。所以我需要对其执行基本操作,所以我需要获取数组元素的位置。

这是我在 codepen 上的代码。 https://codepen.io/kanxababu/pen/poKdXbW

也在这里发布代码

let array = [];
let a = "18647AF0D0,59,6]1864726D1,65,5]1864726A,85,5]1864726A,75,5]";
let boss = a.split(']');
//document.write(boss);
// console.log(b);
for (let i=0;i<boss.length  ;i++) {
  //document.write(boss[i]);
  let final= boss[i].split(',');
  //console.log(final);
  
  array = [...array, [final]];
}
for (let i =0;i<array.length-1;i++) {
  for (let j =0;j<3;j++) {
    console.log(array[i][0][j]);
  }
}


index = array.indexOf('1864726A');
console.log(index);

【问题讨论】:

  • 如果您的问题是关于查找索引位置,最好提供一个只关注此问题的最小示例。包括拆分字符串的代码与问题无关,应该被忽略。

标签: javascript arrays


【解决方案1】:

我没听懂你的问题 但是如果你想用“,”和“]”分隔你的数组,这是方法:

const result = a.split("]").join("").split(",")

【讨论】:

  • 我不想将它分开,因为我这样做是因为我的数据以字符串格式来自服务器,因此每个数据都带有结束字符“]”,因此借助它我可以区分我的 1 组数据。
【解决方案2】:

这应该对您有用,只需将其添加到您现有的代码中即可。它将返回数组的位置和该数组中元素的位置的数组。我认为可能有一种语法上更好的方法来执行 if 语句,但我不确定,而且它无论如何都会起作用。

function twoDIndexOf (myArray, element) {
  let index
  for (let i=0;i<myArray.length-1;i++){
    if(myArray[i][0].indexOf(element) != -1) {
      return [i, myArray[i][0].indexOf(element)]
    }
  }
}
console.log(twoDIndexOf(array, '1864726A'));

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-03-09
    • 2021-02-03
    • 1970-01-01
    • 1970-01-01
    • 2021-02-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多