美文网首页
Lodash源码解析-_.compact

Lodash源码解析-_.compact

作者: 小妍妍说 | 来源:发表于2021-07-01 09:41 被阅读0次
_.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
}

相关文章

网友评论

      本文标题:Lodash源码解析-_.compact

      本文链接:https://www.haomeiwen.com/subject/gyarultx.html