手写lodash库的difference函数

74 阅读1分钟

手写loadsh函数的第一天

 <script>
      //第一种方法
      // const arr = [1, 2, 3, 4, 5];
      // function difference(arr, oldArray) {
      //   let newarr = [];
      //   newarr = [...arr, ...oldArray];
      //   let newarray = [];
      //   newarr.forEach((el) => {
      //     if (!newarray.includes(el)) {
      //       newarray.push(el);
      //     }
      //   });
      //   return newarray;
      // }
      // console.log(difference(arr, [1, 2, 6, 7, 8]));
      //第二种方法
      const arr = [1, 2, 3, 4, 5];
      function difference(arr, oldArray) {
        let newarr = [];
        newarr = [...arr, ...oldArray];
        let set = new Set(newarr);
        newarr = [...set];
        return newarr;
      }
      console.log(difference(arr, [1, 2, 6, 7, 8]));
    </script>