{ for (let i in arr) { -6ren">
gpt4 book ai didi

javascript - 为什么我没有成功地在第二个代码部分中获得嵌入的 "if"来完成其工作?

转载 作者:行者123 更新时间:2023-12-03 02:50:42 25 4
gpt4 key购买 nike

var checking_location = "none"

const getentitiesByType = (arr, type) => {
for (let i in arr) {
if (arr[i].type === type) {


checking_location = "exists"
return arr[i].entity
}
}
return null;
}
if (!meeting.location) {
if (checking_location != 'exists') {
rl.question('where is the location ', function(answer) {
// session.send("The location you gave:" answer);
rl.close();
session.send(answer)
// console.log(tryagain(answer, 'Calendar.Location'));
session.send(tryagain(answer, 'Calendar.Location'));
});
}
} else {
next();
}

我在这里想做的是在 if (!meeting.location) 中循环,如果 checking_location 保持等于 none.基本上我想检查某个 Json 字段是否存在,如果不存在,我想继续在 rl.question 中询问问题。我的问题是代码是仅第一次工作,那么即使我提供不包含必填字段的另一个输入,我也不会得到这个问题。另请注意,这不是完整的代码,但它足以理解我的实现中可能存在的问题点。

最佳答案

getentitiesByType 需要在某处调用,简单地将其分配给变量不会使函数运行:getentitiesByType(youArr, yourType)

另外,作为旁注,不要使用 checking_location 的字符串值,只需重命名变量并使用 bool 值。例如:var hasLocation = false

关于javascript - 为什么我没有成功地在第二个代码部分中获得嵌入的 "if"来完成其工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47871595/

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