javascript - JavaScript过滤器函数过滤掉数组中的零
问题描述
请看下面的代码。它运行但它没有返回正确的值。
对于输入:[0,4,0] 输出应为 [0,0,0]
解决方案
因为0在 Javascript 中是一个 Falsy 值。
并且.filter
函数将过滤掉所有的虚假值,如0、、、假。
.filter
在方法中使用其他一些逻辑。
let arr = [0, 4, 0].filter((number) => number >= 0);
console.log(arr); // [0,4,0]
arr = [0, 4, 0].filter((number) => number);
console.log(arr); //[4]
arr = [0, 4, 0].filter((number) => number > 0);
console.log(arr); //[4]
推荐阅读
- javascript - 为什么 mocha 中事务的测试结果是错误的,但在 REST 测试中可以正常工作?
- r - SparkR groupBy 多列,每个列都应用过滤器
- jquery - 对话框内的 JQuery UI 选项卡 - 根据对话框标题加载选项卡内容?
- java - 需要从 xlsx 文件中访问数据
- laravel - 为什么 Laravel 将表创建(迁移)和模型分开?
- python - 类初始化时导入的模块不能被方法使用
- javascript - 当颜色选择器以编程方式设置值时如何避免触发 Onchange 事件
- itext - 如何使用 itext 将您的内容限制在 pdf 的一页中?
- c# - 我正在尝试通过从 c# 调用 python 来通过 python 执行批处理文件。仅使用python脚本单独触发批处理文件不执行
- java - 迭代 XSLT(Saxon) 中 Java 扩展函数返回的 ArrayList