Oops, try again. It looks like your function doesn't return true when hungry and foodHere are both true


#1

Here is my code had. What am I doing wrong please? keep getting this error message in title.

var hungry = true;
var foodHere = true;

var eat = function() {

if (hungry && foodHere===true) {
return("Eat at Mad Joe's")
}

else { return false}

};

eat()


#2

LOL sorry people I just figured it out, but thanks anyway.

Cyberzyme


#3

Change

into

if (hungry===true && foodHere===true) {

#4

thank you, that is what I figured out just after I posted. The Devil is in the Details.


#5

Hi,

I am having a similar problem. I tried to use the same approach. As in: set the values of both "hungry"
and "foodHere" to "true". Although in my point of view it doesn't make sense to do this, since it goes without saying that both those values were set to true as we declared them.

Anyhow, here is the code. Kindly let me know what I am doing wrong.

It returns the error: "Oops, try again. It looks like your function doesn't return false when hungry is false."

// Declare your variables here!
var hungry = true;
var foodHere = true;

var eat = function() {

// Add your if/else statement here!
if(hungry===true && foodHere===true) {
console.log("Great, let's eat!");
} else {
console.log("Sorry, maybe another time!");
}
};
eat();


#6

@douglas.greca
-1 You are using console.log() where the exercise expects the return statement
-2 The function should either return a Boolean true or false ( and NO extra text !!! )

Instructions

Create two variables, hungry and foodHere, and set them both equal to true.

Inside the eat function,
create an if statement

  • that returns true only if both hungry and foodHere are true,
  • and return false otherwise.

The function eat should take no input and hungry and foodHere should both be globals.


#7

@douglas.greca

the FUNCTION talk

var myFunc = function( param1, param2) {
       //Begin of  anonymous FUNCTION-BODY
       //VARIABLE -myFunc- has an -anonymous function- assigned
       //this -anonymous function- has 2 PARAMETERS param1 and param2
       //param1 and param2 PARAMETERS are used 
       //as -local- VARIABLES throughout the FUNCTION-BODY

      console.log( param1 + " and " + param2 ) ;

      //End of anonymous FUNCTION-BODY
};

If you want to call/execute the anonymous function
you will have to add a pair of parentheses to the variable myFunc
like
myFunc();
As the anonymous function was defined
as having 2 parameters
you have to provide 2 arguments
in our case 2 string VALUES "Alena" and "Lauren"
like
myFunc("Alena","Lauren");

some quotes from the outer-world:

**argument is the value/variable/reference being passed in,
parameter is the receiving variable used within the function/block**

OR

**"parameters" are called "formal parameters",
while "arguments" are called "actual parameters".**

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

function with 1 parameter using return-statement

var myFunction = function( param1 ) {
       //Begin of FUNCTION-BODY
       //myFunction =function= has 1 PARAMETER param1
       //this param1 PARAMETER is used as a -local- VARIABLE
       //throughout the FUNCTION-BODY

      return param1;

      //End of FUNCTION-BODY
      };

you have defined a myFunction function
which takes 1 parameter param1
this param1 parameter is used
as a variable throughout the FUNCTION-BODY.

If you want to call/execute this myFunction function
and this myFunction function was defined
as having 1 parameter param1
you will have to provide 1 argument
in our case a "number VALUE" 4
myFunction( 4 );

some quotes from the outer-world:

**argument is the value/variable/reference being passed in,
parameter is the receiving variable used within the function/block**

OR

**"parameters" are called "formal parameters",
while "arguments" are called "actual parameters".**

============================================

As you are using the return-statement in your myFunction function
you will only get a return-value no-display.
You can however capture this return-value in a variable
and then use the console.log()-method to do a display.

var theResult = myFunction( 4 );
console.log( theResult );

OR directly

console.log( myFunction( 4 ) );

#8

thank you @leonhard.wettengmx.n
I feel so silly. I just tried to over do it.

This here bellow worked for me.

// Declare your variables here!
var hungry = true;
var foodHere = true;

var eat = function() {

// Add your if/else statement here!
if(hungry && foodHere) {
return true;
} else {
return false;
}
};
eat();