Son dos conceptos diferentes en el que se entiende que una variable que esperamos que sea un string o una cadena, este vacia o este nula

const strEmpty = '' // cadena vacia
const strNull = null // cadena nula

Podemos comprobar esto mediante la propiedad length, siendo esta solo propiedad de las cadenas, de manera que si es nula nos dara error o falso

Usando un condicional if y el operador typeof

Una forma de comprobar si hay una cadena vacía o nula es utilizar la instrucción if y el operador typeof. He aquí un ejemplo:

let cadena = "";

if (typeof cadena === "string" && cadena.length === 0) {
  console.log("La cadena esta vacía");
} else if (cadena === null) {
  console.log("La cadena es nula");
} else {
  console.log("La cadena no esta vacía o nula");
}

Usando la propiedad length

Otra forma de comprobar si hay una cadena vacía es utilizar la propiedad length. He aquí un ejemplo:

let cadena = "";

if (cadena.length === 0) {
  console.log("La cadena esta vacía");
} else {
  console.log("La cadena no esta vacía");
}

Usando el método trim()

A veces, una cadena puede contener espacios en blanco que hacen que parezca que no está vacía incluso cuando lo está. En tales casos, podemos utilizar el método trim() para eliminar los espacios en blanco iniciales o finales antes de comprobar si están vacíos. He aquí un ejemplo:

let cadena = "   ";

if (cadena.trim().length === 0) {
  console.log("La cadena esta vacía");
} else {
  console.log("La cadena no esta vacía");
}

Extra

Cabe mencionar que en muchos estados de formulario, el tener por defecto en un input un string null, nos puede dar errores de input no controlado. La manera mas facil de arreglarlo es darle un string vacio.