js 筛选数组对象的数据 并判断指定属性为空 则直接返回false

    var arr = [
      { name: "张三", age: 20 },
      { name: "", age: 30 },
      { name: "李四", age: 25 }
    ];
    
    var result = arr.filter(item => item.age > 25).some(item => !item.name);
    console.log(result); // false

 

上面的代码会筛选出 arr 数组中所有年龄大于 25 岁的人,然后检查这些人中是否有某个人的 name 属性为空,如果有则返回 false,否则返回 true

注意,上面的例子中,筛选和判断的顺序是不能颠倒的,因为 Array.prototype.filter() 方法会返回筛选出来的新数组,如果先判断,则会导致判断的是原数组,而不是筛选出来的新数组。

posted @ 2022-12-12 11:01  於生  阅读(1076)  评论(0编辑  收藏  举报