过滤数组假值

题目描述:

删除数组中的所有假值。

在JavaScript中,假值有false、null、0、”“、undefined 和 NaN。

还是先上代码:

function bouncer(arr) {
  return arr.filter(Boolean);
}

bouncer([7, "ate", "", false, 9]);

数组中有个filter()方法,它创建一个新数组, 包含通过所提供函数实现的测试的所有元素。我们只需要实现过滤假值的函数就OK了。

判断数组里的元素是不是假值我们可以用Boolean对象,它是一个布尔值对象的包装器。如果Boolean构造函数的参数不是一个布尔值,则该参数会被转换成一个布尔值.如果参数是 0, -0, null, false, NaN, undefined, 或者空字符串 (“”),生成的Boolean对象的值为false. 其他任何值,包括任何对象或者字符串”false”, 都会创建一个值为true的Boolean对象.

上面的 arr.filter(Boolean) 等同于

    arr.filter(function(item,index,array){
        return Boolean(item);
    })
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值