Replicar la funcionalidad de "Pattern.quote" de Java en un JavaScript RegExp [duplicado]

Esta pregunta ya tiene una respuesta aquí:

¿Existe una función RegExp.escape en Javascript? 12 respuestas

En Java, puede intentar crear una expresión regular que coincida con la URLstackoverflow.com utilizandoPattern.compile("stackoverflow.com"). Pero esto estaría mal porque el. tiene un significado especial en expresiones regulares. La forma más fácil de arreglar esto es escribirPattern.compile(Pattern.quote("stackoverflow.com")) que sale a:Pattern.compile("\\Qstackoverflow.com\\E") cual"cita" toda la cadena.

Quiero hacer lo mismo en JavaScript, pero las expresiones regulares de JavaScript no asignan ningún significado a\Q y\E y no parece que haya un equivalente de JavaScript, así que no estoy seguro de cómo hacerlo. Mi primer pensamiento (vea mi respuesta a continuación) es poner una barra diagonal inversa antes de cualquier carácter que tenga un significado especial en una expresión regular de JavaScript, pero esto parece potencialmente propenso a errores y sospecho que alguien podría conocer una mejor manera.

Esto es para una extensión de Firefox, por lo que las soluciones específicas de Mozilla están bien.