从单个数组中的多个值中查找单个值

时间:2016-07-08 07:22:45

标签: javascript jquery arrays arraylist contains

我有一个具有多个值的数组,如下面的代码所示。

tempstraindatasource

tempstraindatasource[0] = {
A = "0",
B = "1",
C = "2",
D = "3"
}

tempstraindatasource[1] = {
A = "4",
B = "5",
C = "6",
D = "7"

等明智的我在单个数组中存在很多数据 }

我想做一个程序,发现数据是否包含在单行中,就像我想找到名称为#34; A" =" 0"或任何价值" B" =" 0"或" C" =" 0"!我怎么能单行呢?请有人帮助我这样做。

提前致谢并欣赏。

2 个答案:

答案 0 :(得分:1)

正如评论中所述,你的问题需要编辑(或更好的完全重写),但我认为你需要的是这个



var fruits = [{name: 'banana', cost: 5}, {name: 'apple', cost:2}];

var filteredArray = fruits.map(function(fruit, index){
  fruit.index = index;
  return fruit;
}).filter(function(fruit){
  return fruit.name === 'banana';
});

document.write(JSON.stringify(filteredArray));




答案 1 :(得分:1)

您可以对数组使用Array#forEach并检查是否有任何属性具有值,需要Array#some,然后将索引推送到结果数组。



var data = [{ a: 0, b: 1, c: 2, d: 3 }, { a: 4, b: 5, c: 6, d: 7 }],
    indices = [];

data.forEach(function (a, i) {
    Object.keys(a).some(function (k) {
        return a[k] === 0;
    }) && indices.push(i);
});

console.log(indices);