0

我有一个像这样的数组:

["a", "b", "c", "d", "e"]

现在我只想拥有前 3 个项目。我将如何动态删除最后两个,以便我也可以拥有一个 20 个字母的数组,但也可以将其减少到前 3 个。

4

5 回答 5

5
var a = ["a", "b", "c", "d", "e"];
a.slice(0, 3); // ["a", "b", "c"]

var b = ["a", "b", "c", "d", "e", "f", "g", "h", "i"];
b.slice(0, 3); // ["a", "b", "c"]
于 2012-11-01T16:05:41.230 回答
3

怎么样Array.slice

var firstThree = myArray.slice(0, 3);
于 2012-11-01T16:05:58.577 回答
2

拼接功能似乎是您所追求的。您可以执行以下操作:

myArray.splice(3);

这将删除第三个之后的所有项目。

于 2012-11-01T16:05:46.787 回答
2

要提取前三个值,请使用slice

var my_arr = ["a", "b", "c", "d", "e"];
var new_arr = my_arr.slice(0, 3); // ["a", "b", "c"]

要删除最后一个值,请使用splice

var removed = my_arr.splice(3, my_arr.length-3); // second parameter not required
// my_arr == ["a", "b", "c"]
于 2012-11-01T16:06:56.860 回答
0

在 underscore.js 我们可以使用第一个函数

_.first(array, [n])别名:head

返回数组的第一个元素。传递 n 将返回数组的前 n 个元素。

_.first(["a", "b", "c", "d", "e"],3);
=> ["a", "b", "c"]
于 2012-11-02T11:14:31.817 回答