gpt4 book ai didi

javascript - 数组仅在 for 循环的第一次迭代时更新

转载 作者:行者123 更新时间:2023-12-03 11:20:58 25 4
gpt4 key购买 nike

以下代码采用如下结构的对象数组:{html:whatever number:number value}。

function Org(data){
//array of objects
var Data=data;
for(var i=0; i<Data.length; i++){
var nums=[];
nums.push(Data[i].number);
console.log(nums);}
}

当使用 [{html:null,number:1},{html:null,number:1}] 调用时,在第二次迭代中 Nums 应该作为 [1,1] 记录到控制台,但是却被记录了作为 [1] 在第一次和第二次迭代中。为什么会这样?

最佳答案

您需要将 num 的初始化移到 for 循环之外。它在内部为每次迭代创建一个新的空数组。

顺便说一句,不需要为 data 使用另一个变量。

function Org(data){
var nums = [];
for (var i = 0; i < data.length; i++){
nums.push(data[i].number);
}
console.log(nums);
}

关于javascript - 数组仅在 for 循环的第一次迭代时更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44347298/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com