首页 > 其他分享 >如何将数组中元素为空的数据过滤掉?

如何将数组中元素为空的数据过滤掉?

时间:2023-09-28 10:12:20浏览次数:43  
标签:arr 为空 newArr 明细表 item 过滤 数组 fileName fileId

场景:后台返回所有文件列表信息,需要将fileId有值的文件过滤出来回显到页面上。

错误处理:使用map+if判断

let arr = [
    {
        fileId: '1',
        fileName: '缴费明细表'
    },
    {
        fileId: '2',
        fileName: '支付明细表'
    },
    {
        fileId: null,
        fileName: '盖章明细表'
    }
]
let newArr = arr.map((item) => {
    if(item.fileId) {
        return item
    }
})
console.log(newArr)

显然,结果是不对的,fileId没有值的那一/几项处理为undefined了。那如何解决这个问题呢?

自然是使用filter过滤fileId没有值的那一/几项。

let arr = [
    {
        fileId: '1',
        fileName: '缴费明细表'
    },
    {
        fileId: '2',
        fileName: '支付明细表'
    },
    {
        fileId: null,
        fileName: '盖章明细表'
    }
]
let newArr = arr.filter((item) => {
    return item.fileId
})
console.log(newArr)

如果只想拿到fileId有值的那一/几项的fileId呢?

let arr = [
    {
        fileId: '1',
        fileName: '缴费明细表'
    },
    {
        fileId: '2',
        fileName: '支付明细表'
    },
    {
        fileId: null,
        fileName: '盖章明细表'
    }
]
let newArr = arr.filter((item) => {
    return item.fileId
}).map((items) => {
    return items.fileId
})
console.log(newArr)

  

 

标签:arr,为空,newArr,明细表,item,过滤,数组,fileName,fileId
From: https://www.cnblogs.com/heisetianshi/p/17735050.html

相关文章

  • [LeetCode] 1333. 餐厅过滤器
    Problem:1333.餐厅过滤器思路这道题目拿到手基本可以确定是一道大模拟题,基本思路在题目里面已经确定,主要的难点就在对结果的排序上,需要指定sort的排序规则解题方法首先对题目中给出的数组依照题目要求的过滤器规则进行遍历过滤,然后形成一个过滤后的新数组filtered,接着按照......
  • 根据一个数组,创建一个Segment Tree(线段树)
    线段树的特点线段树的优势线段树的构造过程(0,5)37:数组元素下标0~5的元素之和是37(0,2)21:数组元素下标0~2的元素之和是21线段树的基本数据结构(结点结构由五个分量组成)运行结果(C语言代码)递归的创建一颗线段树,然后中序、先序、后序遍历这个结点#include<stdio.h>#include<st......
  • SQL注入 --【过滤or(包含information、orderby这种也寄了)和and的类型】
    来自:[SWPU2019]Web1详见博客:https://blog.csdn.net/plant1234/article/details/124205120payload如下:查看行数1'/**/group/**/by/**/1,'1......直到1'/**/group/**/by/**/23,'1报错也就是说有22行找出回显点//找出回显点-1'/**/union/**/select/**/1,2,3,4,5,6,7......
  • js 检索数组对象中某个属性的值是否不相等
    //判断选中的项是否有不相同的模型consthasNameProperty=_this.selectedOrderList.filter(order=>order.hasOwnProperty("item_model_id"));if(hasNameProperty.length>0){constisEveryNameEqual=hasNameProperty.reduce((prev,curr)=>{if......
  • python numpy 数组操作
          ......
  • vue 数组删除(对象)单/多条删除
    dataList:[{id:'1',value:'aaaa',},{id:'2',value:'bbb',},{id:'3',value:'ccc',},{......
  • Dynamic CRM根据安全角色过滤用户可见的视图
    1.编写插件1usingMicrosoft.Xrm.Sdk;2usingMicrosoft.Xrm.Sdk.Messages;3usingMicrosoft.Xrm.Sdk.Query;4usingSystem;5usingSystem.Collections.Generic;6usingSystem.Linq;7usingSystem.Text;8usingSystem.Threading.Tasks;910......
  • 2023-09-16:用go语言,给你一个整数 n 和一个在范围 [0, n - 1] 以内的整数 p , 它们表示
    2023-09-16:用go语言,给你一个整数n和一个在范围[0,n-1]以内的整数p,它们表示一个长度为n且下标从0开始的数组arr,数组中除了下标为p处是1以外,其他所有数都是0。同时给你一个整数数组banned,它包含数组中的一些位置。banned中第i个位置表示arr[banned[i]]=......
  • 测试驱动技术(TDD)系列之3:详解Java数组
    在前面的文章中我介绍了如何通过junit4和TestNG实现参数化,这两种架构都通过二维数组来实现参数化,在这里我就给大家详细的介绍一下java数组。Junit4定义参数化数据,代码如下:publicstaticCollectionprepareData(){Object[][]object={{1,2,3},{0,2,2},{0,3,3}};returnArrays.as......
  • 有效使用fiddler过滤请求提升测试效率
    我们在fiddler抓包时通常发现抓包中的请求众多,那么如何有效的进行抓包操作,提高测试效率呢?直接上干货!切换到Filter页面。1.对host的过滤,设置如下:2.对请求响应类型的过滤,比如不显示:css,js,jpg或者png文件,设置如下: 3.对请求响应值的过滤,设置如下: 设置成功后,进行百度网站的相关操作,......