FAQ: Code Challenges: JavaScript Fundamentals - agreeOrDisagree()

#1

This community-built FAQ covers the “agreeOrDisagree()” exercise from the lesson “Code Challenges: JavaScript Fundamentals”.

Paths and Courses
This exercise can be found in the following Codecademy content:

Web Development

FAQs on the exercise agreeOrDisagree()

Join the Discussion. Help a fellow learner on their journey.

Ask or answer a question about this exercise by clicking reply (reply) below!

Agree with a comment or answer? Like (like) to up-vote the contribution!

Need broader help or resources? Head here.

Looking for motivation to keep learning? Join our wider discussions.

Learn more about how to use this guide.

Found a bug? Report it!

Have a question about your account or billing? Reach out to our customer support team!

None of the above? Find out where to ask other questions here!

#3

The question states: write a function that takes in two strings. Shouldn’t first and second be written as strings, such as const agreeOrDisagree (‘first, second’) ??

1 Like
#4

That is one string, btw. If the function expects two strings, then each would be quoted separately. Are first and second already declared variables with a value? If so, there would be no quotes since we wish to access those values, and not 'first', 'second'.

#5

How come I get an error with this code? I get the right answer and I’ve tested it but I’m still not allow to move forward.

#6

I just realised that “Agree” and “Disagree” were capitalised :pensive: . There should at least be some leeway for capitalisation of strings surely??

#7

if you use a return and wrap the condition in () it will work.

try this…

const agreeOrDisagree = (answer1, answer2) => {return (answer1 === answer2 ? ‘You agree!’ : ‘You disagree!’);}

console.log(agreeOrDisagree(“yep3”, “yep”))

#8

Why doe this work: const agreeOrDisagree = (first, secound) => {
if(first === secound) {return’You agree!’}
else {return ‘You disagree!’}}

but this doesnt?
const agreeOrDisagree = (first, secound) => {
if(first === secound) {console.log(‘You agree!’)}
else {console.log(‘You disagree!’)}}

#9

I would be interested to know the answer to this as well!

#10

They both work, only differently. The exercise checker may be expecting to log the return value. If we log inside the function then the return value is undefined.

2 Likes
#11

I would like to as well! I was using console.log in my if statement and it would print the correct answer but then Undefined underneath. When I came here and saw everyone saying to use return, I did that and then it worked. It doesn’t make sense to me

#12

return hands a result back to the caller (the line in the code that called the function) that can be used once the function is exited. Logging in the function gives nothing back, and the result is only visible on the screen, but is not available in memory.

1 Like