How do I pass a function as a parameter without the function executing in the "parent" function or using `eval()`? (Since I've read that it's insecure.)

I have this:

```
addContact(entityId, refreshContactList());

```

It works, but the problem is that `refreshContactList` fires when the function is called, rather than when it's used in the function.

I could get around it using `eval()`, but it's not the best practice, according to what I've read. How can I pass a function as a parameter in JavaScript?