1

我有一个对象MyObject,它的一个属性ItemIDs是一个整数数组。我想得到一个PageItemIDs只包含部分整数的新数组。这是一个寻呼机;我传入页码PageNumber并获得页面上项目的 ID。假设页面大小为 20 项。

这是我尝试过的。它不起作用,因为 js 与引用一起工作,所以我最终改变了对象的数组。

PageItemIDs = MyObject.ItemsID;
PageItemIDs = PageItemIDs.splice(PageNumber * 20, 20);

而不是在页面中获取 ItemID,我最终得到不在页面中的 ItemID。

我知道我不是那么遥远,但如果你能提供帮助,那就太好了。

谢谢。

编辑:

当我做

PageItemIDs = PageItemIDs.slice((PageNumber -1) * 20, 20);

它适用于第 1 页,但对于其他所有页面,它返回一个空数组。

好的,我明白了,没关系。

 PageItemIDs = PageItemIDs.slice(PageNumber * 20, PageNumber * 20);
4

2 回答 2

1
PageItemIDs = cloneObject(MyObject).ItemsID;
PageItemIDs = PageItemIDs.splice(PageNumber * 20, 20);
于 2012-05-17T22:13:20.193 回答
1

使用slice()而不是splice().

slice()返回数组的一个切片,splice()就地更改数组的内容。

于 2012-05-17T22:13:22.467 回答