快速返回数组的一半

时间:2020-04-30 00:49:20

标签: javascript

所以我回答这个问题,但我相信还有另一种方法 Q是: 编写一个函数一半,复制数组的前半部分。如果数组元素的数量为奇数,则中间元素应属于前半部分。 halve([1、2、3、4])应该返回[1、2]。 和([[1,2,3,4,5])返回[1,2,3]。

function halve(x) {
  let len = x.length / 2 - 0.5
  let xx = x[len]
  if (x.length % 2 === 0) {
    return x.slice(0, x.length / 2)
  } else {
    return x.slice(0, xx)
  }
}
console.log(halve([1, 2, 3, 4]));

1 个答案:

答案 0 :(得分:1)

您可以使用内置的过滤器功能

function halve(x){
   return x.filter((i, idx) => idx < Math.floor(x.length / 2))
 }
console.log( halve([1, 2, 3, 4]));

相关问题