它是正确的还是array.concat()方法

时间:2019-06-26 07:26:00

标签: javascript arrays

我创建了类似于Array.concat()的concat函数。它通过了我所有的测试:

  1. 仅通过数组参数返回新数组。
  2. 传递两个参数,第二个是字符串。
  3. 传递两个参数,第二个是数组。
  4. 传递两个参数,第二个是数字。
  5. 传递三个参数,第二个是数字,第三个是字符串。
  6. 传递四个参数。
function concat() {
  var result = [];

  for (var i = 0; i < arguments.length; i++) {
    result.push(arguments[i]);
  }

  return result;
}

1 个答案:

答案 0 :(得分:0)

这更像注释中提到的Array.of

console.log(Array.of(1, 2, 3));

但是您可以使用rest参数和箭头函数的隐式返回来使完全相同的功能更加简洁:

const concat = (...a) => a;
console.log(concat());
console.log(concat(1, 2, 3));

尽管,由于它是 Array.of,所以分配函数引用要容易得多:

const concat = Array.of;
console.log(concat());
console.log(concat(1, 2, 3));