Basic JavaScript - Understanding Undefined Value returned from a Function

Tell us what’s happening:
Describe your issue in detail here.

Your code so far

// Setup
let sum = 0;

function addThree() {
  sum = sum + 3;
}

// Only change code below this line
function addFive() {
  sum += 5;
}
var result = addFive();

// Only change code above this line

addThree();
addFive();

Your browser information:

User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36

Challenge: Basic JavaScript - Understanding Undefined Value returned from a Function

Link to the challenge:

Please Tell us what’s happening in your own words.

Learning to describe problems is hard, but it is an important part of learning how to code.

Also, the more you say, the more we can help!

You are calling the addFive function two times. So sum is not 8 but 13.

You should only call it one time. If you want to see what the function is returning you can add a console.log around the call.

addThree();
console.log(addFive());

it’s showing undefined

Well yes, that is the point of the challenge. When a function doesn’t have an explicit return value it returns undefined.

Both addFive and addThree are not explicitly returning anything. They are causing a side-effect to a variable outside them.

Just in case it is clear what I was suggesting you do.

// Setup
let sum = 0;

function addThree() {
  sum = sum + 3;
}

// Only change code below this line
function addFive() {
  sum += 5;
}

// do not call addFive() here
// both functions should only be called one time
// var result = addFive();

// Only change code above this line

// If you want to see the result of calling the functions
// capture the return value here
var result = addFive();
console.log(result); // undefined
// or wrap the function calls inside a log
console.log(addThree()); // undefined
1 Like

This topic was automatically closed 182 days after the last reply. New replies are no longer allowed.