数组-compact

58 阅读1分钟

说明

    _.compact(array)
        创建一个新数组,包含原数组中所有的非假值元素。
        例如false, null,0, "", undefined, 和 NaN 都是被认为是“假值”。

    举例:
        _.compact([0, 1, false, 2, '', 3]);
        // => [1, 2, 3]

实现:

    function myCompact(array = []) {
      if (!Array.isArray(array)) {
        return array;
      }
      return array.filter(Boolean);
    }

    console.log(myCompact([0, 1, false, 2, "", 3]));
    // [1,2,3]

总结:这里用到的知识点为:利用 Boolean 本身的转换判断方法代理手写 filter 判断逻辑