.filter(_=>_)的作用是过滤出 Truthy 元素。 JS 里允许变量名是 _ 或 $ 这两个字符开头,所以.filter(_=>_)也可以写成.filter($=>$) 传入fitler的回调函数总会返回一个布尔值,参考MDN文档关于callback的释义 callbackFn Function is a predicate, to test each element of the
js(ES6)中感叹号和三个点。 一、感叹号 1. 一个感叹号 一个感叹号(!)最好理解,也是我们经常使用的。!可以将变量转为boolean值,所有的truthy和falsy都可以被转化,比如null、undefined、数字0和空字符串取反都为true,其余都为false。 !null = true !undefined = true !"" = true !
跟据MDN的术语表解释如下: 在 JavaScript 中,Truthy (真值)指的是在 布尔值 上下文中转换后的值为真的值。所有值都是真值,除非它们被定义为 falsy (即除了 false,0,"",null,undefined 和 NaN 外)。 JavaScript 在布尔值上下文中使用强制类型转换(coercion)。 JavaScript 中的真值示例如下(将
在 JavaScript 中,Truthy (真值)指的是在 布尔值 上下文中转换后的值为真的值。所有值都是真值,除非它们被定义为 falsy (即除了 false,0,"",null,undefined 和 NaN 外)。 JavaScript 中的真值示例如下(将被转换为 true,if 后的代码段将被执行): if (true) if ({}) if ([]) if