当前位置:首页 > 技术分析 > 正文内容

最快清除数组空值?分享 1 段优质 JS 代码片段!

ruisui885个月前 (01-11)技术分析37

本内容首发于工粽号:程序员大澈,每日分享一段优质代码片段,欢迎关注和投稿!

大家好,我是大澈!

本文约 600+ 字,整篇阅读约需 1 分钟。

今天分享一段优质 JS 代码片段,用最简洁的代码清除了数组中的空值。

老规矩,先阅读代码片段并思考,再看代码解析再思考,最后评论区留下你的见解!

const arr = [0, 1, false, 2, "", 3];

const cleanedArray = arr.filter(Boolean);

// 输出:cleanedArray = [1, 2, 3]


分享原因

这段代码展示了数组方法的巧妙运用,通过 filter 方法结合 Boolean 函数,实现了对数组的简洁过滤操作,为处理数组元素提供了一种高效且简洁的思路。

对于需要从数组中去除特定类型(如 false0"" 等假值)元素的场景具有很好的参考价值。

正所谓,逻辑能简单一点就简单一点,代码能少写一行就少写一行!


代码解析

1. const arr = [0, 1, false, 2, " ", 3];

首先定义了一个数组 arr,其中包含了不同类型的元素,包括数字、布尔值和空字符串。

2. const cleanedArray = arr.filter(Boolean);

filter 方法用于创建一个新的数组,其中包含特定数组过滤后的所有元素。

Boolean 函数会将传入的参数转换为布尔值。在 JavaScript 中,0、false、""(空字符串)、null、undefined 和 NaN 被视为假值,其他值被视为真值。

所以当 filter 方法使用 Boolean 函数作为回调时,会将数组 arr 中的假值元素过滤掉,只保留真值元素,最终得到新的数组 cleanedArray 为 [1, 2, 3] 。

扫描二维码推送至手机访问。

版权声明:本文由ruisui88发布,如需转载请注明出处。

本文链接:http://www.ruisui88.com/post/191.html

标签: 数组过滤
分享给朋友:

“最快清除数组空值?分享 1 段优质 JS 代码片段!” 的相关文章

软件测试-性能测试专题方法与经验总结

本文 从 性能测试流程,性能测试指标,性能监测工具,性能测试工具,性能测试基线,性能测试策略,性能瓶颈分析方法几个维度,进行知识总结和经验分享;详细见下图总结,欢迎大家补充;性能测试经验与思考1. 性能测试流程1.1. 性格规格评审1.2. 资源排期1.2.1. 人力资源1.2.2. 时间计划· 性...

Acustica Audio 发布模拟Roland Jupiter 双声道合成器插件 TH2

福利: Acustica Audio 发布模拟Roland Jupiter 风格的双声道合成器插件 TH2 免费下载 意大利 Acustica Audio 公司发布布模拟Roland Jupiter 风格的双声道合成器插件 TH2 ,灵感来源于Acustica Audio的THING-8系列,它是...

数组、去重、排序、合并、过滤、删除

ES6数字去重 Array.from(new Set([1,2,3,3,4,4])) //[1,2,3,4] [...new Set([1,2,3,3,4,4])] //[1,2,3,4]2、ES6数字排序 [1,2,3,4].sort(); // [1, 2,3,4],默认是升序...

Python中的11 种数组算法

1. 创建数组 创建数组意味着留出一个连续的内存块来存储相同类型的元素。在大多数语言中,您可以在创建数组时指定数组的大小。假设您正在书架上整理一组书籍,并且您需要为正好 10 本书预留空间。功能架上的每个空间都对应于数组中的一个索引。# Example in Python arr = [1, 2,...

精品微信小程序在线考试系统+后台管理系统|前后...

《微信小程序在线考试系统+后台管理系统|前后分离VUE》该项目含有源码、论文等资料、配套开发软件、软件安装教程、项目发布教程等本系统包含微信小程序前台和Java做的后台管理系统,该后台采用前后台前后分离的形式使用Java+VUE微信小程序——前台涉及技术:WXML 和 WXSS、JavaScript...

突发!微信全面封禁字节跳动旗下办公产品飞书

日前,字节跳动旗下办公套件飞书发布官方公告称,飞书相关域名无故被微信全面封禁,并且被单方面关闭微信分享API接口。和讯科技对此进行了尝试,发现“feishu”相关域名链接在微信内均无法打开,显示“如需浏览,请长按网址复制后使用浏览器访问”,而在飞书内也无法直接跳转微信分享,显示“未获得分享权限”。据...