lodash(compact)源码复写

211 阅读1分钟
function _compact(array) {
  var index = -1,
    resIndex = 0,
    length = array == null ? 0 : array.length,
    result = []
  while (++index < length) {
    var value = array[index]
    if (value) {
      result[resIndex++] = array[index]
    }
  }
  return result
}
console.log(_compact([0, 1, false, 2, '', 3]));  //[1,2,3]

思想:利用js隐式转换类型重新组装一个新数组返回