I’m having some issues getting a proper boolean return on section 4.1 of Codecademy’s Javascript tutorial. Here is the code:
// Define quarter here.
var quarter = function(n) {
if (n / 4 ){
return true;
} else {
return false;
}
};
if (quarter(4) === 1) {
console.log("The statement is true.");
} else {
console.log("The statement is false.");
}
From what I can see, I am passing the newly defined quarter variable a function with a parameter of ‘n’ that I then divide by 4 to see if it returns 1 for true, or 0 (else) for false. I then am using the ‘quarter’ function in an if loop to check for equality of 1 of the number ‘4’ passed as ‘n’.
I’m assuming this is some basic logic that I am just not used to using (as a front end developer looking to get into JavaScript programming) but I would definitely appreciate some thoughts and guidance.
In JavaScript, the constants
trueandfalseare not numbers; they’re a separate type.Furthermore, you’re comparing with
===and that will explicitly prevent type conversion during the comparison.Note that
n / 4is going to betrue(non-zero) for all values of “n” except 0 (edit you probably meant to use%). And in general, any construction of the form:can be replaced by:
or, alternatively,