What is a higher-order function in JavaScript?
A function that performs mathematical operations.
A function that takes another function as an argument or returns a function.
A function that has a higher complexity than other functions.
A function that is defined within another function.