Between the Arduino runtime, wifi library, mqtt library, libraries for talking to peripherals, and my C++ application code I'm already getting pretty close to the 512KiB limit for an ESP8266-based thermostat I've been working on. Hard to imagine JS being small enough to fit on that, but perhaps it's designed for embedded chips with a bit more flash space available
More details in the Espruino repo: https://github.com/espruino/Espruino
The boards listed on the CircuitPython downloads page usually have between 2 and 8 MB of flash, so you often have enough for the VM and your own code plus a few files.
What are the benefits of doing this vs. using a runtime (like Moddable's XS) that supports ECMAScript 2018?