2

我有一个类似这样的 jsonArray。

var json_array = [
    { "text": "id", "size": 4}, 
    { "text": "manifesto", "size": 4}, 
    { "text": "also", "size": 4}, 
    { "text": "leasing", "size": 4},
    { "text": "23", "size": 4}, 
    ...
];

我想得到这个 json_array 的前 n 个元素。

最好的方法是什么?除了迭代它们并有一个计数器来限制大小。

4

3 回答 3

3

速记(MDN Docu):

json_array.length = n;

稍长一些(MDN 文档):

json_array.splice( n );
于 2012-04-11T10:45:37.233 回答
0
var shorter_array = json_array.splice(0, N);

http://www.w3schools.com/jsref/jsref_splice.asp

于 2012-04-11T10:49:05.073 回答
0

要复制原始数组:

var newArray = json_array.slice(0, n);

请注意,此副本不是递归的。这意味着如果您更改对象中的某些内容,newArray它也将更改json_array.


或者正如@Sirko 所说,您可以从数组中删除元素:

json_array.length = n; 
于 2012-04-11T10:49:40.070 回答