I understand your point, it's simply wrong. If those people didn't want to use javascript, they could have migrated to something else altogether. Clojurescript, Elm, Dart, RustJs, ...
Instead they kept Javascript with a type system on the top (typescript, purescript, flow, ...).
Some are supersets of JS, some are not. Elm, Fable, etc are examples of languages not just extensions.
The reason for using an extension/superset is usually not because JS is terrific but because gradual/partial migration and interop are more important than a better language.
Before anyone points it out: Fable isn't a lanugage, it's an F#->JS compiler. It's "programming JS without programming in JS" though, so it's another language used in that sense.
Instead they kept Javascript with a type system on the top (typescript, purescript, flow, ...).