gpt4 book ai didi

javascript - 为什么这个 JavaScript while 循环不在 Node 中运行?

转载 作者:太空宇宙 更新时间:2023-11-04 02:53:48 25 4
gpt4 key购买 nike

我试图让程序重复接受输入并重复它,直到输入“退出”。现在循环没有运行,我不知道为什么,因为退出变量设置为 false。这是我的代码:

var read = require("read");
var exit = false;


function OutsideLoop (exit) {

while(exit === false){

read({prompt: "> "}, function (err, result) {

console.log("");
console.log(result);
console.log("Type in more input or type 'exit' to close the program.");

if(result === "exit"){
exit = true;};
});


};

};


OutsideLoop();

谢谢大家的帮助。我有一个类似的循环,使用 if/then 而不是 while 工作,所以我按照同样的思路重写了这个循环。

最佳答案

您已将“exit”声明为函数的参数,因此外部声明对函数内部的逻辑没有影响。调用该函数时,您不会向该函数传递任何内容,因此“exit”是 undefined 并且 === 测试失败。

如果您将“exit”传递给函数,或者从函数声明中取出参数,它就会起作用 - 也许。该“读取”功能是异步的,因此我不确定 Node 的行为方式。

关于javascript - 为什么这个 JavaScript while 循环不在 Node 中运行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19848372/

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