Corrija o erro: filtrar arrays vazios

Estou tentando filtrar arrays vazios de um array. Em outras palavras, quero transformar algo que se parece com isto: ["a", "b", [], [], [1, 2, 3]] para que fique assim: ["a", "b", [1, 2, 3]]. Meu código é:

function removeEmptyArrays(arr) {
  return arr.filter(x => x !== [])
}

No entanto, de alguma forma, os arrays vazios ainda existem. Corrija este código incorreto para remover os arrays vazios.

Exemplos

// What I want:
removeEmptyArrays(["a", "b", []]) ➞ ["a", "b"]
removeEmptyArrays([1, 2, [], 4]) ➞ [1, 2, 4]

// What I am getting:
removeEmptyArrays(["a", "b", []]) ➞ ["a", "b", []]
removeEmptyArrays([1, 2, [], 4]) ➞ [1, 2, [], 4]

Notas

N/A