Alguien sabe por qué:
moment('2022/03/30').format('L') => 03/29/2022 moment('2022-03-30').format('L') => 03/30/2022¿Es esto debido a la diferencia de zona horaria?
Sí. moment.js primero verifica si su cadena se ajusta a ISO8601 o RFC2822, luego recurre a new Date() . '2022-03-30' es válido en ISO8601, pero '2022/03/30' no lo es. ISO8601 usa UTC, pero new Date() asume su zona horaria local. Esto significa que moment('2022-03-30') representa 2022-03-30 a las 00:00 UTC, mientras que moment('2022/03/30') representa 2022-03-30 a las 00:00 en su zona horaria local .
Independientemente de la zona horaria en la que se interprete, está formateado en su zona horaria local, por lo que debido a que está detrás de UTC, se muestra como el día anterior.