Javascript-切片对象数组

时间:2020-04-23 22:19:00

标签: javascript for-loop slice

我从API返回一个对象数组,该API返回一个1380个对象的数组,我只需要索引116-137的对象。我已经研究了Array.prototype.slice()。根据我的研究,我相信您需要遍历当前数组才能切片对象数组,这是我正在尝试做的事情。

我正在尝试创建仅需要的对象的新数组。它们是索引116-索引137。当控制台使用splice方法记录我的新数组时,控制台中没有返回任何内容。

这是我的代码

    function drawPercentageDifference(data) {


for (var i = 0; i < data.Results.Data; i++) {

    var caArray = data.Results.Data.slice(115, 137)

    console.log(caArray, "cAArray")

}
}

这是控制台记录原始阵列时的结果

console.log(data.Results.Data)
Array(1380) [ {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, … ]

在这种情况下是否需要for循环?

我最初确实尝试过这样切片

    function drawPercentageDifference(data) {

caArray = data.BEAAPI.Results.Data.toString().slice(115, 137)
console.log(caArray)
    }
}

这导致forString is not a function和我的console.log导致caArray返回object object,但是基于我的阅读,我相信我不能,因为它是对象数组而不是字符串。

1 个答案:

答案 0 :(得分:0)

我能够解决我的问题。谢谢所有发表评论的人。不需要for循环,在删除.toString()方法后,我收到了返回的结果,正是我所期望的。

最终答案 caArray = data.BEAAPI.Results.Data.slice(115, 137) console.log(caArray)