JavaScript 是数组的一部分

如何创建一个新数组,其中包含旧数组中编号为 nth 到(n + k) th 的所有元素?

59100 次浏览

您需要 切片方法。

var newArray = oldArray.slice(n, n+k);

我觉得切片法可以满足你的要求。

arrayObject.slice(start,end)

Slice 创建浅拷贝,所以它不会创建精确的拷贝:

var foo = [[1], [2], [3]];
var bar = foo.slice(1, 3);
console.log(bar); // = [[2], [3]]
bar[0][0] = 4;
console.log(foo); // [[1], [4], [3]]
console.log(bar); // [[4], [3]]

假设我们有一个由六个对象组成的数组,我们想得到前三个对象 物品。

解决方案:

var arr = [{num:1}, {num:2}, {num:3}, {num:4}, {num:5}, {num:6}];
arr.slice(0, 3); //will return first three elements

原型解决方案:

Array.prototype.take = function (count) {
return this.slice(0, count);
}