day4: js数组方法concat的重写

64 阅读1分钟
  const arr = [1, 2, 3],
    arr1 = [2, 111];
  Array.prototype._concat = function (...arg) {
    const newArr = [];
    const listArg = [...arg];
    for (let i = 0, len = listArg.length; i < len; i++) {
      const item = listArg[i];
      Array.isArray(item) ? newArr.push(...item) : newArr.push(item);
    }
    const res = [...this, ...newArr];
    return res;
  }
  console.log(arr._concat(arr, 11, arr1));
  // 输出结果:[1, 2, 3, 1, 2, 3, 11, 2, 111]