[AskJS] What is the thing you hate the most about JS?

This page summarizes the projects mentioned and recommended in the original post on /r/javascript

InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
  • The standard library is a tough one. There is a proposal for built-in modules but it is very early days and miles away from what is needed. Clojure ships with functions that make the likes of Lodash and Ramda redundant. I think for a dynamic language an extensive library of functions for manipulating collections is essential. It is a real thing that once dynamic language codebases grow too big, they become a challenge to maintain. Therefore having functions that do a lot of common tasks for you mitigates that issue. Paired with immutability, lots of code just becomes data passing through pipelines, giving less surface area for bugs and making everything more concise and declarative.

  • proposal-observable

    Observables for ECMAScript

  • Finally reactivity. Clojure has agents which provide reactivity out of the box. You guessed it, we have a proposal for Observables but there are some good implementations in RxJS and Effector. I think this is a gaping hole in the JS ecosystem that isn't talked about enough and as such the individual UI libraries make their own reactive primitives that aren't interoperable and tie you into their world. Observables on their own aren't very useful but they at least provide a primitive that can be shared and passed around.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • proposal-pattern-matching

    Pattern matching syntax for ECMAScript

  • The only conditional expressions Javascript have are the ternary and boolean operators. So generally you're stuck with if statements and switch statements. Feeding back into declarative immutability as a goal, statements breed variables which breed state which leads to bugs. There is a proposal for pattern matching which would give us really powerful conditional expressions but it's a long way off. Seb Markbage (React maintainer) is a champion which I think is really telling. JSX encourages an expression based style but as we've seen the support for conditional expressions is weak. So you have React developers abusing `&&` and ternaries in their components. A good conditional expression primitive would simplify a huge number of React components very quickly.

  • proposal-record-tuple

    ECMAScript proposal for the Record and Tuple value types. | Stage 2: it will change!

  • The immutability is coming (though far off) with the record and tuple proposal.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts

  • Union, intersection, difference, and more are coming to JavaScript Sets

    3 projects | news.ycombinator.com | 19 Feb 2024
  • ES2023 features list!

    2 projects | /r/javascript | 14 May 2023
  • ES2023 introduces new array copying methods to JavaScript

    1 project | /r/javascript | 11 May 2023
  • What's new in ECMAScript 2023

    1 project | /r/node | 18 Apr 2023
  • The huge potential of Kotlin/Wasm

    1 project | /r/Kotlin | 14 Feb 2023