ECMAScirpt5 中 Array 类中的 filter 方法使用目的是移除全部的 ”false“ 类型元素 (false, null, undefined, 0, NaN or an empty string):数组
var a=[1,2,"b",0,{},"",NaN,3,undefined,null,5];
var b=a.filter(Boolean); // [1,2,"b",{},3,5]
复制代码
Boolean 是一个函数,它会对遍历数组中的元素,并根据元素的真假类型,对应返回 true 或 false.bash
例如:函数
Boolean(0); // false
Boolean(true); // true
Boolean(1); // true
Boolean(""); // false
Boolean("false"); // true. "false"是一个非空字符串
复制代码
实际上,下面这样的写法是一种简写模式ui
b = a.filter(Boolean);
复制代码
它等价于spa
b = a.filter(function (x) { return Boolean(x); });
复制代码