我从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
,但是基于我的阅读,我相信我不能,因为它是对象数组而不是字符串。
答案 0 :(得分:0)
我能够解决我的问题。谢谢所有发表评论的人。不需要for循环,在删除.toString()方法后,我收到了返回的结果,正是我所期望的。
最终答案
caArray = data.BEAAPI.Results.Data.slice(115, 137)
console.log(caArray)