首页 > 其他分享 >JS 移除对象数组中,属性值全为空的项

JS 移除对象数组中,属性值全为空的项

时间:2024-04-17 10:35:14浏览次数:14  
标签:全为 const name age rest JS newArray 移除 id

const array = [
  { id: 1, name: 'John', age: 25 },
  { id: 2, name: 'Alice', age: null },
  { id: 3, name: 'Bob', age: undefined },
  { id: 4, name: 'Eve', age: '' },{ id: 5, name: '', age: '' }
];

const newArray = array.filter(obj => {
  const { id, ...rest } = obj; // 使用解构赋值将 id 属性排除
  const values = Object.values(rest);
  return values.some(value => value !== ''); // 使用 some() 方法检查是否存在非空白值
});

console.log(newArray);

 提取那些属性值全为空的项:

const array = [
  { id: 1, name: 'John', age: 25 },
  { id: 2, name: 'Alice', age: null },
  { id: 3, name: 'Bob', age: undefined },
  { id: 4, name: 'Eve', age: '' },{ id: 5, name: '', age: '' }
];

const newArray = array.filter(({ id, ...rest }) => {
  return Object.values(rest).every(value => value === '');
});

console.log(newArray);

 

标签:全为,const,name,age,rest,JS,newArray,移除,id
From: https://www.cnblogs.com/wkk2020/p/18140000

相关文章

  • vue dayjs 安装指定版本
    在Vue项目中安装指定版本的Day.js库,你可以使用npm或者yarn。以下是安装指定版本Day.js的步骤:打开终端(命令行)。转到你的Vue项目目录。执行以下命令,其中x.x.x替换为你想要安装的Day.js版本号。使用npm安装指定版本的Day.js:[email protected] 或者使用......
  • mybatilsplus属性为json类型的坑
    最近做的一个项目由于需要把json类型字段在springboot+mybatisplus的框架中。实体类上的jsonobject死活存不进数据库,总结出一下经验1.实体类上:@TableName(value="mix_target",autoResultMap=true)2.自定义Hander:自定义实现AbstractJsonTypeHandler(mybatilsplus里面带了......
  • 30 天精通 RxJS (22):Subject 基本观念
    终于进到了RxJS的第二个重点Subject,不知道读者们有没有发现?我们在这篇文章之前的范例,每个observable都只订阅了一次,而实际上observable是可以多次订阅的Multiplesubscriptionsvarsource=Rx.Observable.interval(1000).take(3)varobserverA={ next:(value......
  • 30 天精通 RxJS (21):深入 Observable
    我们已经把绝大部分的operators都介绍完了,但一直没有机会好好的解释Observable的operators运行方式。在系列文章的一开头是以数组(Array)的operators(map,filter,concatAll)作为切入点,让读者们在学习observable时会更容易接受跟理解,但实际上observable的oper......
  • package.json
     Node项目在项目根目录中名为 package.json 的文件中跟踪依赖关系和元数据。这是你项目的核心。它包含名称、描述和版本之类的信息,以及运行、开发以及有选择地将项目发布到 npm 所需的信息。在本教程中,我们将:了解 package.json 与项目之间的关系确定重要字段和......
  • 【题解】P4307 [JSOI2009] 球队收益 / 球队预算
    P4307[JSOI2009]球队收益/球队预算题解题目传送门题意简述一共有\(n\)个球队比赛,输了赢了都会有相应的支出,现在让你安排\(m\)场比赛的输赢,是总支出最少。思路首先看到最小支出,状态不好定义,直接费用流,启动!。后文如果没有特殊说明,边的费用均为\(0\)。考虑建图,其......
  • 基于jackson的json key压缩工具类
    packagecom.zipkey;importcom.fasterxml.jackson.annotation.JsonInclude;importcom.fasterxml.jackson.core.JsonProcessingException;importcom.fasterxml.jackson.databind.JsonNode;importcom.fasterxml.jackson.databind.MapperFeature;importcom.fasterxml.......
  • selenium之常见js操作
    1、简介浏览器对象模型(BrowserObjectModel(BOM))允许JavaScript与浏览器对话。现代的浏览器已经(几乎)实现了JavaScript交互相同的方法和属性,因此它经常作为BOM的方法和属性被提到主要介绍以下浏览器对象模型的Windows对象--窗体location对象--页面操作document对......
  • JS-运算符的优先级
    一、运算符运算符汇总表下面的表格将所有运算符按照优先级的不同从高(19)到低(1)排列。请注意,下表中故意不包含展开语法——原因可以引用 StackOverflow上的一个回答,“展开语法不是一个运算符,因此没有优先级。它是数组字面量和函数调用(和对象字面量)语法的一部分。”优先级......
  • js--参数归一化-日期格式化函数
    //参数归一化///*日期时间格式化date:日期时间isFillZero:是否需要0补位*/functionformate(date,formater,isFillZero=false){formater=_formatNormalize(formater)function_isFillZero(value,length){if(isFillZero){return(value+'').p......