if语句结果的新数组

时间:2017-08-14 12:40:22

标签: javascript arrays

我有一个包含对象的数组。

我想使用if语句搜索具有特定属性的对象,并创建一个仅包含这些对象的单独数组。



var firstArray = [...]

for (var a = 0; a < firstArray.length; a++) {
  if (firstArray[a].name == 'index.png') {
    // create secondArray here
  }
}
&#13;
&#13;
&#13;

感谢您的帮助!

3 个答案:

答案 0 :(得分:0)

只需使用过滤器

var secondArray = firstArray.filter(x => x.name == 'index.png')

答案 1 :(得分:0)

&#13;
&#13;
var firstArray = [{
  'name': 'A'
}, {
  'name': 'B'
}, {
  'name': 'C'
}]
var newArray = [];

for (name in firstArray) {
  if (firstArray[name].name == 'A') {
    newArray = firstArray[name];
    console.log(newArray)
  }
}
&#13;
&#13;
&#13;

请检查此代码段。

答案 2 :(得分:-1)

你可以这样使用

var obj = {'el1': 1, 'el2': 2};
var firstArray = [{'el1': 1, 'el2': 2}, {'el3': 1, 'el4': 2}]
var searchTerm = 'el1';
for(var a=0; a<firstArray.length; a++){
  for(var key in firstArray[a]){
    if(key == searchTerm){
      // do whatever you want to do. 
    console.log('key = ', key, 'value = ', obj[key]);
    }
  }
}