_.compact(array)
创建一个新数组,包含原数组中所有的非假值元素。例如false, null,0, "", undefined, 和 NaN 都是被认为是“假值”。
例子:
_.compact([0, 1, false, 2, '', 3]);
// => [1, 2, 3]
源码解析:
function compact(array) {
let resIndex = 0
const result = []
if (array == null) {
return result
}
for (const value of array) {
if (value) { // 重点在这里!!! 将其转换成布尔值,从而判断是否是真值,代码很省
result[resIndex++] = value
}
}
return result
}
网友评论