gpt4 book ai didi

javascript - 无法访问条件语句内的循环内的数组或对象值/循环未启动

转载 作者:行者123 更新时间:2023-12-02 14:58:40 25 4
gpt4 key购买 nike

我所说的“无法访问”是指循环未启动。抱歉造成困惑。

我之前问过这个问题,但我再次尝试提供更多详细信息和完整的代码。

基本上,我根据用户的输入过滤输出。但是,我很困惑为什么我无法访问 obj["Entry Fee"]值和 toFilterParams.entry我在上面的代码中标记的 for 循环内的数组。我可以在循环开始之前访问它,但循环内不会触发任何内容(是的,在我标记的 for 循环之前该数组是可见的,并且在代码开始之前填充了所有条件)。

我尝试在循环开始之前在变量中设置对象的值,但显然这没有做任何事情。

供引用,toFilterParams设置为 {games: [], entry: [], dates: []};

下面的代码标明了我可以在哪里访问数组和对象值以及在哪里不能访问:

db = _.without(_.map(dbTransition, function(obj){

if("Starting_Date" in obj){

if(toFilterParams.games.length > 0){

// repeat of code I have below

} else if(toFilterParams.games.length === 0){

// Have access to obj["Entry Fee"] and toFilterParams.entry array**
if(toFilterParams.entry.length > 0){

// Have access to obj["Entry Fee"] and toFilterParams.entry array**

for(var x = 0, xx = toFilterParams.entry; x < xx; x++){

// Have no access to obj["Entry Fee"] and toFilterParams.entry array aka the loop here doesn't initiate.**

if(Number(toFilterParams.entry[x]) !== Number(obj["Entry Fee"])){

if(toFilterParams.dates.length > 0){

var startDate = Date.parse(toFilterParams.dates[0]);
var endDate = Date.parse(toFilterParams.dates[1]);
var FinalDate = Date.parse(obj["Starting_Date"]);

if(FinalDate >= startDate && FinalDate <= endDate){
return obj;
}

} else{
return obj;
}
}
}
} else if(toFilterParams.entry.length === 0){

if(toFilterParams.dates.length > 0){

var startDate = Date.parse(toFilterParams.dates[0]);
var endDate = Date.parse(toFilterParams.dates[1]);
var FinalDate = Date.parse(obj["Starting_Date"]);

if(FinalDate >= startDate && FinalDate <= endDate){
return obj;
}
} else{
return obj;
}
}
}

}

}), undefined);

所以基本上,我不知道发生了什么,希望得到任何帮助来解决这个问题。谢谢。

最佳答案

for 循环永远不会被执行。发生这种情况是因为 toFilterParams.entry 是一个数组。在 for 循环的情况下,您正在检查数组。要解决此问题,您需要将数组的长度设置为 xx 而不是数组本身:

for(var x = 0, xx = toFilterParams.entry.length; x < xx; x++){...

关于javascript - 无法访问条件语句内的循环内的数组或对象值/循环未启动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35588814/

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