¿Es mejor devolver `undefined` o` null` desde una función de JavaScript?

Tengo una función que he escrito que básicamente se ve así:

function getNextCard(searchTerms) {
  // Setup Some Variables

  // Do a bunch of logic to pick the next card based on termed passed through what I'll call here as 'searchTerms' all of this logic is omitted because it's not important for my question.
  // ...

  // If we find a next card to give, than give it
  if (nextCardFound)
    return nextCardFound;

  // Otherwise - I'm returning undefined
  return undefined;
}

Pregunta: ¿Sería mejor devolver "nulo" aquí?

Puedo devolver lo que quiera, obviamente ... Simplemente no estaba seguro de qué es lo mejor que puedo usar.

El código que llama a esta función sabe cómo tratar con indefinido (en realidad, nunca sucederá a menos que algo salga terriblemente mal)

La razón por la que hago esta pregunta es que escuché algo que sonaba como "No asigne variables indefinidas" o algo así, que dificultará la depuración. Entonces, el hecho de que puedo ver esonull se devuelve me dice que el retorno está funcionando, pero básicamente funciona de manera similar aundefined.

Documentación:

Documentos de Mozilla No respondió mi pregunta ... Google tampoco: \ Esta pregunta SO

 - Era demasiado amplio para lo que estoy tratando de resolver aquí.esto no

Respuestas a la pregunta(9)

Su respuesta a la pregunta