The biggest challenge of evolving the JavaScript language is the backwards compatibility requirement. It’s also its greatest strength.
JavaScript is so widely deployed on the Web, it’s hard to make any kind of backwards-incompatible change to the language. Even purely additive changes, such as the introduction of a new String or Array method, can sometimes end up causing breakage on websites (often in weird an unexpected ways). As a browser engineer, Breaking the Web is the worst thing that can happen.
On the other hand, this means we can all write JavaScript programs today that will likely still behave the same way 20 years from now. That’s amazing!