javascript/codecademy-if语句在计算true之前运行两倍于false?
所以我是新来的,我正在参加一个关于Codecademy的进修课程。我的逻辑有问题吗javascript/codecademy-if语句在计算true之前运行两倍于false?,javascript,if-statement,logic,Javascript,If Statement,Logic,所以我是新来的,我正在参加一个关于Codecademy的进修课程。我的逻辑有问题吗 // Declare your variables here! var hungry = true; var foodHere = true; var eat = function() { // Add your if/else statement here! if(hungry && foodHere){ console.log("problem solved!");
// Declare your variables here!
var hungry = true;
var foodHere = true;
var eat = function() {
// Add your if/else statement here!
if(hungry && foodHere){
console.log("problem solved!");
return true;
}
else {
console.log("why are you even here?");
return false;
}
}
一个没有参数输入的函数检查两个全局预定义的true语句。保存并运行此脚本时,输出为
why are you even here?
why are you even here?
problem solved!
这对我说,它评估了两次假(虽然它不应该),继续运行,最后评估为真,让我继续前进。其次,如果我将其中一个或两个变量都设置为false,它将输出。。。没有什么没有评估,就没有输出
这里是否有我看不到的问题,或者我的主机中的Codecademy出现了故障?我想检查这些陈述很慢吧?我想在继续之前弄清楚这一点。在编解码器中,我的说明如下: 创建两个变量,
Hunger
和foodHere
,并将它们都设置为true
。在eat
函数中,创建一个if
语句,该语句仅在hunger
和foodher
都为true时返回true
,否则返回false。函数eat
不应接受输入,hunger
和foodher
都应为全局函数
基本上,codecademy获取了您的代码片段并运行了几次eat()
,更改了hunger
和foodHere
的值,以确保eat()
针对指示中指定的条件返回了适当的值
你没有做错什么。您的代码运行正常。它没有被调用,而是自然运行。这是完整的代码,请记住它在codecademy上。或者实际上,我应该说,函数被立即调用,因为它正在设置变量的值。我还没有看到语法。。。这对代码来说意味着什么?为什么变量第一次设置不正确,最后计算三次??另外,没有看到共享和下载按钮…我保证这是我输入的100%的代码。我无法访问任何幕后代码。我会发布照片,但我没有足够的网站代表!不管怎样,我键入这个,点击run,然后在控制台中得到结果。也许这是他们使用的javascript的一种改变形式?请阅读佳能的评论。发布到工作区的链接。