首页 > 编程语言 > 详细

过滤数组中的假值

时间:2021-05-17 10:00:28      阅读:10      评论:0      收藏:0      [点我收藏+]

从数组中移除所有假值(falsy values)。JavaScript 中的假值有 falsenull0""undefinedNaN。提示:可以考虑将每个值都转换为布尔值(boolean)

 1 function bouncer(arr) {
 2   let res =[];
 3   for(let i = 0;i<arr.length;i++){
 4     if(Boolean(arr[i])){
 5       res.push(arr[i]);
 6     }
 7   }
 8   return res;
 9 }
10 bouncer([7, "ate", "", false, 9]);

1. 取反运算符(!)是一个感叹号,用于将布尔值变为相反值,即true变成falsefalse变成true。对于非布尔值,取反运算符会将其转为布尔值。如果对一个值连续做两次取反运算,等于将其转为对应的布尔值,与Boolean函数的作用相同。这是一种常用的类型转换的写法

1 !!x
2 // 等同于
3 Boolean(x)
 1 function bouncer(arr) {
 2   let res =[];
 3   for(let i = 0;i<arr.length;i++){
 4     if(!!arr[i]){
 5       res.push(arr[i]);
 6     }
 7   }
 8   return res;
 9 }
10 bouncer([7, "ate", "", false, 9]);

 2. Array.prototype.filter() 方法创建一个新数组, 其包含通过所提供函数实现的测试的所有元素

1 function bouncer(arr) {
2   return arr.filter(Boolean);
3 }
4 bouncer([7, "ate", "", false, 9]);

 

过滤数组中的假值

原文:https://www.cnblogs.com/icyyyy/p/14775412.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!