• onlinepersona@programming.dev
          link
          fedilink
          English
          arrow-up
          2
          ·
          edit-2
          8 months ago

          The problem is that browsers all decided to solve problems differently, then nodejs came along with ideas that browsers couldn’t implement easily (modules for example). To get around that, people wrote “polyfills” but each polyfill did it differently again. So, javascript builders were introduced that automatically inserted polyfills or rewrote javascript code to work on the server and in the browser and they had different solutions.

          Of course browsers work differently and have different features, so libraries specialised in exploiting those differences came up and became popular.

          Now in an effort to reduce differences, the “best” solutions (aka the most widely used which of course doesn’t mean best) are being integrated into the language. Promises, modules, String functions, classes, typing, etc.

          It was a grand mess long ago and it seems to continue to be that way.

          CC BY-NC-SA 4.0