Javascript 仅提取数组中的多个对象

Javascript 仅提取数组中的多个对象,javascript,Javascript,我刚和邮递员一起创建了一些测试 大多数的get响应都由大量数组组成,其中包含很多对象(为了便于阅读,我只留下了两个属性,这些对象有20多个属性) 我有一个脚本,它读取整个响应中的正确数据,然后返回结果 如何在一定数量的对象上停止脚本 [ { “用户名”:“”, “活动”:” }, { “用户名”:“”, “活动”:” } ] 查看下面的代码是否有帮助 function processLongArray() { var myLongArray = [{ "username&

我刚和邮递员一起创建了一些测试

大多数的
get
响应都由大量数组组成,其中包含很多对象(为了便于阅读,我只留下了两个属性,这些对象有20多个属性)

我有一个脚本,它读取整个响应中的正确数据,然后返回结果

如何在一定数量的对象上停止脚本

[
{
“用户名”:“”,
“活动”:”
},
{
“用户名”:“”,
“活动”:”
}
]

查看下面的代码是否有帮助

function processLongArray() {

  var myLongArray = [{
    "username": "active"
  }, {
    "username": "active"
  }, {
    "username": "inactive"
  }]; // and many more elements in the array

  var count = 0;
  var targetCount = 1; // stop after this number of objects
  for (var i = 0; i < myLongArray.length; i++) {
    var arrayItem = myLongArray[i];

    // condition to test if the arrayItem is considered in count
    // If no condition needed, we can directly increment the count
    if (arrayItem.username === "active") {
      count++;
    }

    if (count >= targetCount) {
      console.log("OK we are done! @ " + count);
      return count; // or any other desired value
    }
  }
}

processLongArray();
函数processLongArray(){
变量myLongArray=[{
“用户名”:“活动”
}, {
“用户名”:“活动”
}, {
“用户名”:“非活动”
}];//以及数组中的更多元素
var计数=0;
var targetCount=1;//在此数量的对象之后停止
对于(var i=0;i=目标计数){
log(“好的,我们完成了!@”+count);
返回计数;//或任何其他所需的值
}
}
}
processLongArray();
也许这对你有帮助(我不知道我是否理解得很好)

但是使用
filter
可以获得一个属性的值(可以匹配任何需要的属性),使用
slice
可以获得前N个值

因此,您不必迭代整个列表,只需检查这些值

此外,如果只需要匹配条件的元素数,只需使用
过滤器
和长度即可

var数组=[
{
“用户名”:“1”,
“活动”:真
},
{
“用户名”:“2”,
“活动”:错误
},
{
“用户名”:“3”,
“活动”:真
}
]
var total=1//所需的文档总数
var newArray=array.filter(e=>e.active).slice(0,总计);
console.log(newArray)
//要了解与条件匹配的元素的长度,请执行以下操作:
var length=array.filter(e=>e.active).length

console.log(长度)
如果(numberOfObjects>=expectedNumber){returnsomevalue;}
做得很棒,非常感谢!整个想法对我帮助很大,谢谢!太棒了,非常感谢你!整个想法对我帮助很大,谢谢!不客气!如果您的问题已经解决,请将答案标记为已接受,不胜感激