javascript从对象中的数组中获取数组

时间:2012-05-17 22:11:01

标签: javascript

我有一个对象MyObject,其中一个属性ItemIDs是一个int数组。我想获得一个只包含部分int的新数组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);

2 个答案:

答案 0 :(得分:1)

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

答案 1 :(得分:1)

使用slice()代替splice()

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