如何从没有索引的数组中检索值

时间:2017-07-17 06:30:16

标签: javascript arrays

[["Django UnChainers","AA-24010"],["General","AA-26191"]]

我有一个上面的数组。我想检索前缀 AA (位于第二位置)的所有值。有没有办法通过传递前缀来获取值?

我知道通过传递索引可以获取值的方式但是明天索引可以得到更改,所以可以通过传递前缀来获取值吗?

2 个答案:

答案 0 :(得分:1)

如果OP想要一个函数来执行此操作。

function(arr, pattern){
  return arr.map(function(x){
    return x.filter( word => ~ word.indexOf(pattern))
  });    
}

var arr = 
[ [ "Django UnChainers", "AA-24010" ], [ "General", "AA-26191" ]];

var list = arr.map(function(x){
  if(~(x[1].indexOf('AA'))){
    return x[1];
  }
});

console.log(list);

如果索引将来发生变化,请遍历每个字符串并检查“AA”字符串。请检查以下代码。

var arr = 
    [ [ "Django UnChainers", "AA-24010" ], [ "General", "AA-26191" ]];

    var list = arr.map(function(x){
      return x.filter( word => ~ word.indexOf('AA'))
    });

    console.log(list);

答案 1 :(得分:1)

这是更短的

var = [nested array]
a.filter(x => x[1].startsWith('AA'))
//in case you are not sure about the index 
a.filter(x => x.filter(y => y.startsWith('AA').length > 0))