You are passing the parameters from the calc function to the add function.
When you call calc calc(10,3,add) you are passing in 3 parameters, the two numbers and the function add. So the scope of calc now has access to num1(10), num2(3), and callback(add).
Since you are returning callback(num1, num2) inside of calc, it calls the add function and passes the num parameters.
Your third parametar is callback function, and when you called it in console log, you’re initilazing it with call to add function. Make another like substract where you return a-b and you’ll get an idea then.